需求:在做图书馆数据整合时候,由于有两个校区,用的是分离开的同一个数据库,数据库名字都一样的,现在我要整合在一起,我的想法是把两个数据库先还原到我本地,用写好的脚本整合到一起。所以,我还原两个数据库时候就遇到了因为数据库名相同而无法还原情况。下面给出一个解决方案
新建了两个数据库。其中gdlisxp用于正常还原,xzgdlisxp用以下方式还原。新建查询,执行以下语句
RESTORE DATABASE xzgdlisxp -- xzgdlisxp是我新建的数据库 FROM DISK = 'F:20160412成都校区金盘数据20160412.bak' --本地备份数据库 with replace, MOVE 'xzgdlisxp' TO 'C:Program FilesMicrosoft SQL ServerMSSQL11.MSSQLSERVERMSSQLDATAxzgdlisxp.mdf', MOVE 'xzgdlisxp_log' TO 'C:Program FilesMicrosoft SQL ServerMSSQL11.MSSQLSERVERMSSQLDATAxzgdlisxp.ldf'
执行成功后还需要再次还原一下,再次还原时候一定要选中覆盖还原。
“文件”里面修改"还原为"的mdf和ldf都要改为现在的才行。
清空日志文件
USE [master] GO ALTER DATABASE AFMS SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE AFMS SET RECOVERY SIMPLE GO USE AFMS GO DBCC SHRINKFILE (N'AFMS_Log' , 11, TRUNCATEONLY) GO USE [master] GO ALTER DATABASE AFMS SET RECOVERY FULL WITH NO_WAIT GO ALTER DATABASE AFMS SET RECOVERY FULL GO