SQLSERVER数据库迁移(不同服务器间的迁移方法)
前言
sqlserver数据迁移(记录一次将正式服务器数据库与测试服务器数据库同步的方法)
一、SQLSERVER数据库同版本迁移(备份与还原)
-
找到需要备份的数据库,右键需要备份的数据库,选择任务、选择备份
-
选择备份文件的存放位置后点击确定
-
将备份后的文件复制到目标服务器上,随后打开服务器上的数据库,找到目标数据库右键,选择
任务、选择还原、选择文件和文件组
-
检查目标数据库是否正确,选择源设备,选取复制到服务器的数据库备份文件,勾选完整类型的文件,点击确认
-
等待完成即可
-
如果需要直接覆盖数据库,一定要在选项里面选择覆盖!!!不然会报错!
二、SQLSERVER数据库不同版本迁移
- 参考===》博客
三、因为数据库正在使用,所以无法获得对数据库的独占访问权—还原或删除数据库的解决方法
问题一描述:SQL Server数据库备份还原后,在数据库名称后会出现“受限制访问”字样
问题二描述:在对SQL Server数据库进行还原时,提示:System.Data.SqlClient.SqlError:因为数据库正在使用,所以无法获得对数据库的独占访问权。(Microsoft.SqlServer.Smo)。出现此问题的原因是在还原数据库时,有其他用户正在使用数据库。还原数据库要求数据库工作在单用户模式。通常就是DBA在操作时,不允许其他用户连接数据库。
问题一解决办法:
右键点击数据库 -> 属性 -> 选项 -> 状态 -> 限制访问 -> 选择Multiple -> 确定。
问题二解决办法:
方法一(最方便):右键点击数据库 -> 属性 -> 选项 -> 状态 -> 限制访问 -> 选择Single-> 确定。然后还原。
方法二(最直接):断开数据库连接
方法三(最暴力):注销/重启数据库服务器
方法四(最麻烦):写代码修改数据库相关属性,虽然麻烦,有的时候还是要用到,那就用到的时候再研究。
还原或删除sql server 2008数据库时,经常会出现:
“因为数据库正在使用,所以无法获得对数据库的独占访问权”,终解决方案如下
关键SQL语句:
ALTER DATABASE [datebase] SET OFFLINE WITH ROLLBACK IMMEDIATE
用完之后再
ALTER database [ datebase] set online