今天发生一个SQL Server 2012 SP2奇怪的数据丢失问题,请大家帮忙分析分析

ym7600 2015-07-23 07:28:17
一个内部系统,已经在生产环境使用了一段时间,访问量不大,今天突然全面报sql执行错误,1,2分钟后又正常了,但进去后今天新插入的数据记录都没有了。

出现问题前我直接在sql管理器中执行过delete,只是对一个表where了一个id进行删除,所以开始以为误删除,查了sql执行的日志,并没有多条记录删除的请求。

接着发现当天的很多update也丢失了,就是整个系统坐时光机回到了昨天,但一个表的一个字段的update结果还在(是个log,记录的操作时间,有今天的操作记录,且连续)。另外,库中一个文件表,id是标识,对应磁盘中的文件,文件名中有这个表的id,文件名中的id已经出现了535,现在表中id的max是528,我新建了一条记录,id竟然是529,也就是说这个表的标识都退回去了。

这台数据库服务器在外网,sql server开了外网访问,有被黑的风险,但如果是误删除或任何操作,都不可能出现标识列退回去啊。

如果是磁盘硬损伤,那也不应该只缺失今天的啊,太巧了吧?

难道是SQL Server出现Bug?要不要把SQL Server升级到2014?

请大家指点
...全文
148 6 点赞 打赏 收藏 举报
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
专注or全面 2015-07-25
一个内部系统,已经在生产环境使用了一段时间,访问量不大,今天突然全面报sql执行错误,1,2分钟后又正常了,但进去后今天新插入的数据记录都没有了。 可以确定你的数据库就是在这点时间段内被恢复的,猜测是数据库服务被停止了,数据文件直接被替换
  • 打赏
  • 举报
回复
ym7600 2015-07-25
引用 5 楼 x_wy46 的回复:
一个内部系统,已经在生产环境使用了一段时间,访问量不大,今天突然全面报sql执行错误,1,2分钟后又正常了,但进去后今天新插入的数据记录都没有了。 可以确定你的数据库就是在这点时间段内被恢复的,猜测是数据库服务被停止了,数据文件直接被替换
哦,这倒是提醒我了,有可能不是在SQL Server中发生的,我查一下Windows Server的崩溃恢复,是有一个这个东西,看系统日志,16:50到17:10分之间没有日志,有可能崩溃重启了
  • 打赏
  • 举报
回复
ym7600 2015-07-24
引用 3 楼 x_wy46 的回复:
首先SqlServer不可能有这么大的BUG(任何一个版本), 从你说的标识列都被重置了,肯定是权限较大的用户才能做到的,建议你先把权限规范起来 另外你说的维护计划中没有恢复数据库的操作,那不代表有其他权限的用户对数据库做过恢复操作 建议你查看一下SqlServer的恢复记录 http://blog.csdn.net/kevinsqlserver/article/details/8087293
这篇文章我之前搜到了,也查看了[msdb].[dbo].[restorehistory]和msdb.dbo.backupset两个表,前者是空的,后者只有我维护计划安排的每天0点的备份,确实没有恢复数据库的操作。 当然,是否有可能有sa账户被黑,登进去执行了恢复数据库,又清除了msdb中的记录?
  • 打赏
  • 举报
回复
专注or全面 2015-07-23
首先SqlServer不可能有这么大的BUG(任何一个版本), 从你说的标识列都被重置了,肯定是权限较大的用户才能做到的,建议你先把权限规范起来 另外你说的维护计划中没有恢复数据库的操作,那不代表有其他权限的用户对数据库做过恢复操作 建议你查看一下SqlServer的恢复记录 http://blog.csdn.net/kevinsqlserver/article/details/8087293
  • 打赏
  • 举报
回复
ym7600 2015-07-23
我也想到这个可能,但sql server的日志和维护计划日志中都没有恢复的记录,而且,一个表中的一个记录操作时间的字段还记录了今天的时间,真是太奇怪了
  • 打赏
  • 举报
回复
专注or全面 2015-07-23
是不是数据库被昨天的备份还原了?
  • 打赏
  • 举报
回复
相关推荐
发帖
疑难问题
创建于2007-09-28

2.1w+

社区成员

MS-SQL Server 疑难问题
申请成为版主
帖子事件
创建了帖子
2015-07-23 07:28
社区公告
暂无公告