SQL Server 2014完全备份和还原到另一个数据库不还原完整数据集

时间:2016-01-20 04:27:24

标签: sql-server database

很难为我的问题设置标题。

基本上我在托管服务器上有一个生产数据库。我有一个备份数据库的日常进程,然后我使用ftp将bak文件拉到内部服务器,然后我恢复数据库。当我恢复今天的备份没有错误时,今天的交易(在主交易表中)不存在。只有62,253行

所以我在内部服务器上创建了一个测试数据库,并将备份恢复到那里。交易就在那里。 61,286行。

所以备份很好......只是恢复工作不正常。这是我从故障恢复中得到的消息。

已将数据库名称更改为XX

流程 恢复XX 5%已处理。 处理率为10%。 15%处理。 处理率为20%。 处理了25%。 30%处理。 35%处理。 40%处理。 45%处理。 50%已处理。 55%已处理。 60%处理。 65%已处理。 70%已处理。 75%已处理。 80%已处理。 85%已处理。 90%已处理。 95%已处理。 100%处理。 处理了数据库'XX'的21352页,文件16上的文件'xy_1_data'。 处理了数据库'XX'的13696页,文件16上的文件'xx'。 处理了数据库'XX'的2页,文件16的文件'xy_1_log'。 RESTORE DATABASE在1.319秒(207.602 MB /秒)内成功处理了35050页。

所以看起来它工作正常......这是我的恢复脚本

    ALTER DATABASE [XX] SET SINGLE_USER WITH ROLLBACK IMMEDIATE;

    ALTER DATABASE [XX] SET OFFLINE;

    RESTORE DATABASE [XX] FROM  DISK = N'D:\SQLBAK\XX.bak' WITH  FILE = 16,  MOVE N'xy_1_data' TO N'D:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\xx_data.mdf',  MOVE N'xx' TO N'D:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\xx_data2.mdf',  MOVE N'xy_log' TO N'D:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\xx_log.ldf',  NOUNLOAD,  REPLACE,  STATS = 5

    ALTER DATABASE [XX] SET ONLINE;

    ALTER DATABASE [XX] SET MULTI_USER;

    ALTER DATABASE [XX] SET RECOVERY SIMPLE 

所以不确定这里的解决方案是什么。

我应该进行增量备份和恢复吗?或者我可以使用一个选项来确保完全恢复...我已经在使用REPLACE。

我应该每天删除并重新创建数据库......因为它在一个全新的数据库上正确完全恢复

提前致谢

0 个答案:

没有答案