升级到SQL Server 2012的七个理由

日期: 2015-04-01 作者:Basit Farooq翻译:姜传华 来源:TechTarget中国 英文

微软针对SQL Server 2000的主流技术支持和延长技术支持已经结束了,而SQL Server 2005,SQL Server 2008和SQL Server 2008 R2的主流技术支持也已经结束,延长支持也行将期满。微软建议在其生命周期的支持政策下,为了继续能获得支持,用户需要尽快升级到SQL Server 2012和SQL Server 2014。 尽管最新版本SQL Server 2014引入了许多新的功能,但很多企业还是更倾向于首先升级到SQL Server 2012。因为它已经得到了广泛的使用,同时也是自SQL Server 2005以来最稳定的一个版本。

在本文中,我们就来列……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

微软针对SQL Server 2000的主流技术支持和延长技术支持已经结束了,而SQL Server 2005,SQL Server 2008和SQL Server 2008 R2的主流技术支持也已经结束,延长支持也行将期满。微软建议在其生命周期的支持政策下,为了继续能获得支持,用户需要尽快升级到SQL Server 2012和SQL Server 2014。

尽管最新版本SQL Server 2014引入了许多新的功能,但很多企业还是更倾向于首先升级到SQL Server 2012。因为它已经得到了广泛的使用,同时也是自SQL Server 2005以来最稳定的一个版本。在本文中,我们就来列举七个SQL Server 2012的功能特性,它将成为你升级的主要动力。

包含数据库(Contained database)

在SQL Server 2012引入之前,当你将一个数据库从SQL Server数据库引擎的一个实例移动或者还原到另外一个实例时,和数据库用户相关的一些服务器的登录帐号不会被自动的复制到目标实例上。这就给你留下了“孤儿”用户,这时数据库在迁移后不能立刻开始工作,为了让数据库恢复工作,你就需要在目标实例上创建并映射登录帐号关联到数据库的用户上。显然,这降低了数据库的方便性,因为数据库的安全依赖于要进行安装数据库的SQL Server数据库引擎的实例。

SQLServer 2012通过引入包含数据库身份验证(contained database authentication)功能,解决了这个问题。它使得用户可以在要进行安装数据库的SQL Server引擎的实例上验证他们没有登录帐号的数据库。拥有该功能的数据库能够比较容易的在SQL Server实例间迁移,它保存着需要在数据库中定义的所有设置和元数据,并且不再依赖于需要安装数据库的SQL Server实例上的配置,同时这样的数据库也是和位于同一个SQL Server实例上其他数据库隔离的。它支持两种类型的用户:带有密码的SQL用户和无需登录的Windows Principal,两种类型的用户都不需要在master数据库上登录,这些功能使得SQL Server 2012数据库比之前版本更加方便。

SQL Server审计增强

SQL Server2008和SQL Server2008 R2中服务器和数据库审计规范对象是最实用的功能之一,这有助于企业应对各种各样的要求遵守的法律规定,而问题是这一功能仅仅在企业版本中提供。

幸运的是,服务器级的审计已经在所有的SQL Server 2012版本中得到支持。对于审计一个重要的增强是,SQL Server 2012能够更好的应对所出现的问题,比如网络连接失败,SQL Server会继续尝试将事件写入日志。SQL Server 2012审计也支持用户自定义组,即可以将审计事件通过使用sp_audit_write存储过程写入日志。SQL Server 2012也支持过滤审计事件的能力以及包括监视包含数据库用户的新的审计组。

Windows组的默认架构

在SQL Server 2012出现之前,你不能为组(Group)指定默认的架构。这使得当这个组的一个用户在数据库里创建了数据库对象时,SQL Server会自动的创建一个单独的用户(映射到活动目录帐户),以及在数据库中拥有同样名字的架构。因为这个安全管理问题,数据库可能会包含数百个用户和架构,这对于数据库管理员来讲可是管理上的噩梦。因此,通过Microsoft ConnectSQL Server社区要求修复这个安全管理问题。

SQL Server 2012通过允许为组分配默认的架构,帮助企业简化了数据库结构的管理,从而解决了这个安全问题。

用户定义服务器角色

SQL Server2012引入了用户定义的服务器角色,它类似于固定服务器角色,唯一不同的是它是通过SQL Server管理员创建的。SQL管理员能够使用T-SQL或者是SSMS创建、删除或者管理这些用户定义的服务器角色,它的主要优势是可以授权用户基于工作职责进行访问。

文件表

SQL Server 2012引入了文件表,允许你将文件和目录存储在构建于SQL Server Filestream技术之上的一种特殊的表中。一个文件表有一个固定的架构,每一行代表着一个文件或者是目录,文件表主要的优点是支持对于文件或者是目录管理的Win32 API,也就是说你可以通过一个Windows共享区访问一个文件或者是目录的各个层级。数据库存储针对Win32应用程序是透明的,文件能够像一些列一样通过使用T-SQL被批量装入、更新和管理。SQL Server

2012也支持针对这些功能的的备份和恢复。

非聚集列存储索引

随着SQL Server 2012的发布,微软引入了新的列存储非聚集索引类型。不像传统的B-Tree索引(数据是基于行的样式进行存储和组织的),列存储索引会将每一列进行组织存储在单独的磁盘页中,一个列存储索引不按照一定的顺序排列来物理存储列。相反,它是基于一种允许大量的数据在内存中被压缩的VertiPaqde压缩技术,这种高度的内存压缩存储显著的提高了缓冲池的使用,加快了查询执行时间,也减少了总的磁盘I/O和CPU使用,因为仅仅是在查询中匹配的列需要从磁盘读入到内存中。

列存储索引是SQL Server2012中一个最重要的性能和扩展性增强功能,提高了对于常见的数据仓库查询的执行时间,特别是在有大量的数据需要聚合和快速访问的情况下。按照微软的说法,在某种情况下,为查询提供的列存储索引可以将速度提高4、10甚至是100倍,更多的关于列存储方面的信息请参考SQL Server Books Online

AlwaysOn高可用性组

SQLServer 2012增加了对数据库镜像技术和日志传输技术进行了提高和合并的AlwaysOn高可用性组,这是一个提供了企业级数据库镜像的替代品的SQL Server数据库的高可用性和灾难恢复解决方案。一个可用性组支持一组主数据库和一到四组从数据库,这些从数据库能够为只读的访问或者是一些备份操作提供使用,关于这个功能的更多信息请参考:SQL Server 2012容量管理AlwaysOn

作者

Basit Farooq
Basit Farooq

资深数据库管理员、培训师和技术撰稿人,具有十多年微软SQL Server平台的开发、技术培训和数据库管理的经验。

相关推荐