MSSQL备份及数据迁移

时间:2023-03-08 15:48:36

版本:MSSQL 2008

备份情景:从A服务器的SQL 迁移到B服务器,并且数据也迁移过去。

操作环境:A服务器:WINDOWS7  B服务器:WINDOWS8.1   辅助工具:VNC

首先从A服务器进行备份:

MSSQL备份及数据迁移

MSSQL备份及数据迁移

OK,备份完成。通过VNC的Transfer Files将文件Download到B服务器

MSSQL备份及数据迁移

下载过来后,开始在B服务器进行备份及还原数据库:

MSSQL备份及数据迁移

MSSQL备份及数据迁移

备份有可能会遇到以下问题:

1.“备份集中的数据库与现有的数据库不同” ,

导致这个问题的原因一般是路径或者数据库版本问题导致

处理办法:在你需要备份的目的服务器的MSSQL执行以下SQL脚本,直接执行覆盖动作

  RESTORE DATABASE DATA_CENTER
FROM DISK = 'D:\Backup\DATA_CENTER.bak' --bak文件路径
with replace,
MOVE 'DATA_CENTER' TO 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\DATA_CENTER.mdf', --mdf文件路径
MOVE 'DATA_CENTER_log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\DATA_CENTER.ldf' --ldf文件路径

执行成功后,此时数据库已经有表结构了,此时再按照系统的办法进行再次还原数据库,即可。

2.如再执行1的过程中,遇到“因为数据库正在使用,所以无法获得对数据库的独占访问权”

执行以下SQL:

 ALTER DATABASE [datebase] SET OFFLINE WITH ROLLBACK IMMEDIATE

再执行1的SQL脚本,最后可以再执行

ALTER  database  [ datebase]  set   online  

这样,备份任务就已经完成了。