• SQL Server 首次登陆 Linux 平台
    近日,微软 SQL Server 最近达成一个新的里程碑,最新版SQL Server 2017 除了支持 Windows 平台,将首次登陆 Linux 平台,并且还支持 Docker。此举让用户(特别是企业用户)有了更多选择。2016 年 6 月份,微软就提前预告 SQL Server 将支持 Linux 平台近年来, SQL Server 正在一直演化,除了想一改 DMS(数据库管理系统)的角色,还想介入到数据分析、机器学习和数据科学领域。2017 年 4 月份, SQL Server 发布了一个重要组件,支持在 SQL Server 中用 Python 运行机器学习负载。借助这个特性,数据科学家直接操作处理储存在 SQL Server 的数据,不用数据迁移了。机器学习/数据科学领域内的另一种编程语言 R,SQL Server 在去年就整合了。更多细节,见 SQL Server 官方:https://www.microsoft.com/en-us/sql-server/sql-server-2017参考:VentureBeta、SQL Server
  • [技术干货] 跟我一起学 MS SQL Server (二) -- 了解数据库状态
    本帖最后由 jimmy 于 2017-9-21 19:18 编辑数据库状态 数据库总是处于一个特定的状态中,例如,这些状态包括 ONLINE、OFFLINE 或 SUSPECT。若要确认数据库的当前状态,请选择 sys.databases 目录视图中的 state_desc 列或 DATABASEPROPERTYEX 函数中的 Status 属性。 状态 定义 ONLINE 可以对数据库进行访问。即使可能尚未完成恢复的撤消阶段,主文件组仍处于在线状态。 OFFLINE 数据库无法使用。数据库由于显式的用户操作而处于离线状态,并保持离线状态直至执行了其他的用户操作。 例如,可能会让数据库离线以便将文件移至新的磁盘。然后,在完成移动操作后,使数据库恢复到在线状态。RESTORING 正在还原主文件组的一个或多个文件,或正在脱机还原一个或多个辅助文件。数据库不可用。RECOVERING 正在恢复数据库。恢复进程是一个暂时性状态,恢复成功后数据库将自动处于在线状态。如果恢复失败,数据库将处于可疑 状态。数据库不可用。RECOVERY PENDING SQL Server 在恢复过程中遇到了与资源相关的错误。数据库未损坏,但是可能缺少文件,或系统资源限制可能导致无法启 动数据库。数据库不可用。需要用户另外执行操作来解决问题,并让恢复进程完成。 SUSPECT 至少主文件组可疑或可能已损坏。在 SQL Server 启动过程中无法恢复数据库。数据库不可用。需要用户另外执行操作来 解决问题。EMERGENCY 用户更改了数据库,并将其状态设置为 EMERGENCY。数据库处于单用户模式,可以修复或还原。数据库标记为 READ_ONLY,禁用日志记录,并且仅限 sysadmin 固定服务器角色的成员访问。EMERGENCY 主要用于故障排除。例如, 可以将标记为“可疑”的数据库设置为 EMERGENCY 状态。这样可以允许系统管理员对数据库进行只读访问。只有 sysadmin 固定服务器角色的成员才可以将数据库设置为 EMERGENCY 状态。 数据库文件状态 在 SQL Server 中,数据库文件的状态独立于数据库的状态。文件始终处于一个特定状态,例如 ONLINE 或 OFFLINE。若要查看 文件的当前状态,请使用 sys.master_files 或 sys.database_files 目录视图。如果数据库处于离线状态,则可以从 sys.master_files 目录视图中查看文件的状态。 状态 定义ONLINE 文件可用于所有操作。如果数据库本身处于在线状态,则主文件组中的文件始终处于在线状态。如果主文件组中的文件 处于离线状态,则数据库将处于离线状态,并且辅助文件的状态未定义。 OFFLINE 文件不可访问,并且可能不显示在磁盘中。文件通过显式用户操作变为离线,并在执行其他用户操作之前保持离线状态。 注意 当文件已损坏时,该文件仅应设置为离线,但可以进行还原。设置为离线的文件只能通过从备份还原才能设置为在线。RESTORING 正在还原文件。文件处于还原状态(因为还原命令会影响整个文件,而不仅是页还原),并且在还原完成及文件恢复之前, 一直保持此状态。RECOVERY PENDING 文件恢复被推迟。由于在段落还原过程中未还原和恢复文件,因此文件将自动进入此状态。需要用户执行其他操作来解决 该错误,并允许完成恢复过程。SUSPECT 联机还原过程中,恢复文件失败。如果文件位于主文件组,则数据库还将标记为可疑。否则,仅文件处于可疑状态,而 数据库仍处于在线状态。在通过以下方法之一将文件变为可用之前,该文件将保持可疑状态: 1. 还原和恢复 2. 包含 REPAIR_ALLOW_DATA_LOSS 的 BCC CHECKDB DEFUNCT 当文件不处于在线状态时被删除。删除离线文件组后,文件组中的所有文件都将失效。
  • [技术干货] 跟我一起学 MS SQL Server (一)
    本帖最后由 jimmy 于 2017-9-1 17:42 编辑关于 Microsoft SQL Server Microsoft SQL Server 是由美国微软公司所推出的关系数据库解决方案,最新的版本是 SQL Server 2016, 已经在 2016 年 6 月 1 日发布。数据库的内置语言原本是采用美国标准局(ANSI)和国际标准组织(ISO)所定义的 SQL 语言,但是微软公司对它进行了部分扩充而成为作业用 SQL(Transact-SQL)。 几个初始版本适用于中小企业的数据库管理,但是近年来它的应用范围有所扩展,已经触及到大型、跨国企业的数据库管理。 [table=98%,silver] 版本号年份发布名称代号1.0 (OS/2)1999SQL Server 1.0-4.211993SQL Server 4.21-6.01995SQL Server 6.0SQL956.51996SQL Server 6.5Hydra7.01998SQL Server 7.0Sphinx-1999SQL Server 7.0 OLAP工具Plato8.02000SQL Server 2000Shiloh8.02003SQL Server 2000 64-bit版本Liberty9.02005SQL Server 2005Yukon10.02008SQL Server 2008Katmai10.252009SQL AzureCloudDatabase10.502010SQL Server 2008 R2Kilimanjaro(aka KJ)11.02012SQL Server 2012Denali12.02014SQL Server 2014-13.02016SQL Server 2016-数据库服务的启动 [table=98%,lightblue] 通过服务启动我的电脑 -》 管理 -》 服务 -》 SQLServer -》 启动通过 SQLServer 配置管理器启动开始 -》 所有程序 -》 SQLServer -》 配置工具 -》 SQLServer 配置管理器 -》 启动通过命令行启动命令行执行 net start mssqlserv数据库结构 物理结构 [table=98%,lightblue] 主数据文件xxx.mdf包含数据库启动信息,存储一部分数据,一个数据库只能有一个主数据文件辅助数据文件xxx.ndf用来存储组数据文件未能存储的数据和一些数据对象日志文件xxx.ldf存储数据库更新的日志信息文件组逻辑概念,没有具体文件将文件分组,类似于文件夹的存在,默认只存在一个 Primary 文件组逻辑结构[table=98%,lightblue] 表视图索引存储过程 etc数据库命名规则 [table=98%,lightblue] 第一个字符必须是字母或"_"、"@"、"#"不能使用 T-SQL 的保留字不允许嵌入空格或者其他特殊字符数据库分类 [table=98%,lightblue] 系统数据库 (可以理解为用户数据库的数据库)[table=98%,seagreen]master记录 SQLServer 当中系统级别的信息 登录账户 系统配置 数据库文件的存放位置等model模板数据库msdbSQLServer 的代理作业,备份还原信息tempdb临时数据库,存储临时表,临时存储过程resource隐藏并且只读的数据库 包含了 SQLServer 当中所有的系统对象的物理结构信息 这些系统对象的逻辑信息包含在各个数据库的 sys 架构下面用户数据库用户自己创建的数据库创建数据库时需要指定的属性 [table=98%,lightblue] 文件名称存放位置分配的初始空间 (最小 3 MB)属于哪个文件组文件增长 (可按大小或者百分比指定增长速度)文件容量设置 (可以指定最大值或者不受限)兼容级别 (新版本向下兼容可以指定到具体的兼容版本)访问限制 (多用户,单用户,特定用户)可读写属性 (默认可读写,可以改为只读)数据库的创建方法 命令行创建数据库范例 [code] USE master -- 指向当前所操作数据库 GO CREATE DATABASE TEST -- 数据库名称 TEST ON PRIMARY -- 主文件组 ( NAME=′Test_Data′, -- 主文件逻辑名 FILENAME=′E:\test\Test_Data.mdf′, -- 主文件物理名 SIZE=5MB, -- 主文件初始大小 MAXSIZE=100MB, -- 主文件的增长最大值 FILEGROUWTH=15% -- 主文件增长率 ), -- 第一个数据文件结束 FILEGROUP FG -- 第二个文件组 ( NAME=′FG_Test_Data′, -- 主文件逻辑名 FILENAME=′E:\test\FG_Test_Data.ndf′, -- 主文件物理名 SIZE=5MB, -- 主文件初始大小 MAXSIZE=100MB, -- 主文件的增长最大值 FILEGROUWTH=15% -- 主文件增长率 ), LOG ON ( NAME=′Test_Log1′, -- 日志文件逻辑名 FILENAME=′E:\test\Test_Log1.ldf′, -- 日志文件物理名 SIZE=5MB, -- 日志文件初始大小 FILEGROUWTH=0 -- 未启用自动增长 ), -- 日志 2 的具体描述 ( NAME=′Test_Log2′, -- 日志文件逻辑名 FILENAME=′E:\test\Test_Log2.ldf′, -- 日志文件物理名 SIZE=5MB, -- 日志文件初始大小 FILEGROUWTH=0 -- 未启用自动增长 ) GO [/code] 数据库的删除方法 命令行删除数据库范例 [code] USE master GO IF EXISTS(SELECT * FROM sysdatabases WHERE name = ´TEST´) DROP DATABASE TEST GO[/code]
总条数:108 到第
上滑加载中