sql server 2014 主机备份恢复后表数量异常解决方案

栏目:eas cloud知识作者:金蝶来源:金蝶云社区发布:2024-09-22浏览:1

sql server 2014 主机备份恢复后表数量异常解决方案

1.本文档说明:
 本文解决问题为sqlserver2014上DB数据全备份恢复后,表数据量减少问题;
 介绍表数据量对比工具使用,使用工具修复隐藏表结构问题;   
 演示手功备份和恢复过程;
 了解备份重要性;

2.备份复现问题并检查:
2.1.手动备份:
备份前执行查询得到实表总数:
select * into wlp from dbo.sysobjects where xtype='u' ;

再备份数据库DAXX9002:
2.2.手动恢复数据库为test
USE [master]
RESTORE DATABASE [test] FROM  DISK = N'C:\Program Files\Microsoft SQL Server\data\Backup\DATA29002_backup_2020_09_02_102010_0602355.bak' WITH  FILE = 1,  MOVE N'DATA29001' TO N'C:\Program Files\Microsoft SQL Server\data\DATA\yichan1.mdf',  MOVE N'DATA29001_log' TO N'C:\Program Files\Microsoft SQL Server\data\DATA\yichan1.ldf',  NOUNLOAD,  STATS = 5
GO

2.2.手动恢复数据库为test
USE [master]
RESTORE DATABASE [test] FROM  DISK = N'C:\Program Files\Microsoft SQL Server\data\Backup\DAXX29002_backup_2020_09_02_102010_0602355.bak' WITH  FILE = 1,  MOVE N'DATA29001' TO N'C:\Program Files\Microsoft SQL Server\data\DATA\yichan1.mdf',  MOVE N'DATA29001_log' TO N'C:\Program Files\Microsoft SQL Server\data\DATA\yichan1.ldf',  NOUNLOAD,  STATS = 5
GO
查询表名,并保存到www表中,方便后面对比:
use test
go
select * into www from dbo.sysobjects where xtype='u'
确认表数据量:

select count(*) from www  --6429

查询是哪些表丢失了:
安装sql server工具SSDT(即Microsoft Visual studio)
SSDT_11.0.50730.0_CN.iso
下载地址(根据sqlserver 对应版本下载相应SSDT):
https://docs.microsoft.com/zh-cn/sql/ssdt/previous-releases-of-sql-server-data-tools-ssdt-and-ssdt-bi?view=sql-server-2017#ssdt-for-visual-studio-vs-2015
安装ssdt,直接双击即可(略)
2.4.    打开SSDT:
打开Microsoft Visual Studio视图->sql server 对象资源管理器

点击添加”sql server “连接

展开数据库,右击数据库dAXXX29002--->架构比较:

点比较,这样daXXX29002就与test数据库作对比,检查结果发现test表中少了很多表:

若确定需要同步表结构,点更新目录:

也可以点生成脚本,方便于确认后,根据业务实际情况执行(测试库c验证点更新即可)。

更新完成后,查询表数据量,一致:

此时再对test进行备份,删除,再恢复为tt,经测试,备份恢复表数量一样。

 综上原因,猜测原数据库表数据可能存在兼容性若版本bug,并且备份选择不正常,后续再进行深入研究,数据更新类同。
3.其他恢复方法验证表数据总数
若在恢复时使用:KEEP_REPLICATION 选项恢复数据库,则表总数量存在,但是删除数据库时提示:

此时得到表数量正常,因为保留了源复制设置。

4.其他处理问题方法(因此必须使用表差异对比工具,进行同步);
工具有很多:如dbcompare-master、sqldiff.exe 、SSDT也叫VS(SQL server),或自行选择使用和研究。

sql server 2014 主机备份恢复后表数量异常解决方案

1.本文档说明: 本文解决问题为sqlserver2014上DB数据全备份恢复后,表数据量减少问题; 介绍表数据量对比工具使用,使用工具修复隐藏表结...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息