SQL Server 2012新增的Contained Database是为了解决数据库在不同SQL Server实例之间迁移的问题。在以往的情况下,数据库本身并不包含一些实例级别的配置参数(比如:数据库的一些metadata和登录名之类的)将数据库从一台服务器迁移到另一台服务器使用备份和恢复(或分离和附加)使得需要额外工作来设置这些数据库实例级别的metadata,而使用Contained Database,可以将这类信息包含在数据库中,从而大大减少这类工作的工作量。

  下面我们从配置Contained Database开始。

  配置Contained Database

  在开始使用Contained Database之前,首先要通过Sp_config或SSMS来配置实例级别的参数开启Contained Database.如代码1和图1所示。

-开启允许配置Contained database
sp_configure 'show advanced options',1 reconfigure
go
sp_configure 'contained database authentication',1 reconfigure
go
  ▲代码1.通过sp_configure开启Contained Database

▲图1.通过SSMS开启Contained Database

  在实例级别开启允许使用Contained Database后,通过对希望变为Contained Database的数据库在SSMS中进行设置。如图2所示。

▲图2.Contained Database在数据库级别的设置

  下面我们在数据库级别设置用户,如图3所示.

▲图3.在数据库级别添加用户

  同时我们为用户在成员身份中指定到db_owner组。现在,我们就能通过SSMS连接到这个Contained Database了。如图4所示。

▲图4.使用刚刚在数据库级别创建的用户进行登录

  用我们刚刚创建的用户登录,在选项中指定连接数据库为刚才设置为Contained Database的数据库,如图5所示。


▲图5.指定设置为Contained Database的数据库(Test数据库)

  连接成功后,我们可以看到,作为数据库级别设置的用户,是无法访问实例中的其它数据库的。而在图6中我们可以看到,实例不不包含刚刚创建的登录名的,而是包含在数据库级别。

▲图6.两种连接方式对比

  备份和恢复Contained Database

  当然,Contained Database最大的作用是在备份和恢复时的便利性。下面,我们将刚才的Contained Database进行备份,然后在另一个实例中进行恢复。如图7和图8所示。

▲图7.备份数据库

▲图8.在另一个实例中恢复数据库

  这里要注意的是,在另一个实例必须也是sql server 2012并且在实例级别开启了”启用包含数据库”选项。我们尝试登录另一台服务器后,可以看到Contained Database,如图9所示。

  总结

  本文简单讲述了Contained Database,使用Contained Database大大减少数据库在实例之间的迁移工作。但Contained Database真正的强大之处是和AlwaysOn结合使用,我将在后续文章中讲到。

转载于:https://blog.51cto.com/wws5201985/805993

SQL Server新增Contained Database功能相关推荐

  1. sql server新增列_SQL Server 2017中的新增功能

    sql server新增列 SQL Server 2017 is considered a major release in the history of the SQL Server life cy ...

  2. sql server新增列_SQL Server 2016安装中的新增功能?

    sql server新增列 SQL Server 2016 introduced officially on the 1st of June 2016. It comes with many new ...

  3. 今天在webcasts上看sql server 2008的新功能介绍,无意中发现在连接sql server 数据库时,还有一个...

    今天在webcasts上看sql server 2008的新功能介绍,无意中发现在连接sql server 数据库时,还有一个 Failover Partner的选项.以前都没注意过,它的主要功能就是 ...

  4. c#直接调用ssis包实现Sql Server的数据导入功能

    调用ssis包实现Sql Server的数据导入功能网上已经有很多人讨论过,自己参考后也动手实现了一下,上一次笔者的项目中还用了一下这个功能.思前想后,决定还是贴一下增强记忆,高手请54. 1.直接调 ...

  5. 在SQL SERVER中实现Split功能的函数,并在存储过程中使用

    CREATE FUNCTION dbo.SplitString (@Expression NVARCHAR(4000), --要拆分的字符串          @Delimiter NVARCHAR( ...

  6. 使用Microsoft SQL Server 2000全文搜索功能构建Web搜索应用程序 --作者:Andrew B. Cencini...

    [摘要]了解如何充分利用SQL Server 2000的全文搜索功能.本文包含有关实现最大吞吐量和最佳性能的几点提示和技巧. 概述 使用Microsoft© SQL Server 2000的全文搜索功 ...

  7. 使用SQL SERVER 2000的全文检索功能

    http://dev.csdn.net/Develop/article/17/17137.shtm 另外一篇 SQL Server 2000中全文检索的使用 微软的SQL Server数据库是一个在中 ...

  8. 微软服务器sql server,解析:微软SQL Server 2008特性和功能

    导语:SQL Server 2008系统诞生于08年3月13日,在微软2008新一代企业应用平台与开发技术发布大会上,微软宣布向企业用户大众同时发布三款核心应用平台产品:Windows Server ...

  9. SQL Server系统视图/表/功能。 现实生活中的常见问题和解决方案

    介绍 (Introduction) In this new article, we will talk about the system views/tables/functions and how ...

最新文章

  1. 设计模式之笔记--抽象工厂模式(Abstract Factory)
  2. 2019 ACM - ICPC 上海网络赛 E. Counting Sequences II (指数型生成函数)
  3. Kali Linux 2020.1b发布了
  4. 计算机网络知识简单介绍
  5. android 指定语言的资源,Android国际化多语言切换
  6. [转]Angular2 使用管道Pipe以及自定义管道格式数据
  7. php 仓库管理实例,php+mysql超市仓库管理系统
  8. CDOJ 1401 谭爷的黑暗沙拉 数学
  9. 王腾晒Redmi K30 Pro拆机视频:创新“三明治”主板
  10. plsql口令过期_Oracle 11g中密码过期问题详解
  11. 上海技术计算机学校学费多少,上海web前端学校学费一般是多少
  12. EXT4中恢复使用rm命令误删除的文件
  13. net3.5离线一键安装工具_一键获取抖音直播源地址(无水印高清下载),无需安装Fiddler抓包工具...
  14. 物联网毕业设计 太空游戏机设计与实现
  15. 自然语言处理----常用函数简析
  16. <Zhuuu_ZZ>Map接口和equals重写
  17. JavaWeb-RequestResponse
  18. 《录屏工具:真正的两款良心免费开源录屏软件》
  19. windows上datax的使用记录
  20. 醍醐灌顶——我眼中的Spring Cloud

热门文章

  1. svn发布网站(转载于badb0y)
  2. IEEE论文公式快捷获取
  3. python实现视频播放器_对目前的视频播放器不满意?教你用Python做一个视频播放器...
  4. pdf会签_设备验收管理办法20140604(会签签批版).pdf
  5. iOS第三方库汇总分享
  6. linux服务器新装hba卡,Linux系统上安装FC HBA卡驱动-weiyonghz-ChinaUnix博客
  7. godot学习笔记1前期摸索
  8. Launch Failed,Binary not found
  9. x58和x79服务器性能,X58接班人:2012年Intel最牛主板X79规格曝光
  10. 中式英语之鉴读书笔记(下)