数据库的数据今天有两个关键表莫名其妙丢失了,问了一下几个同事都说没有动,我也相信他们,但是什么原因没有的呢?而且不知道还有哪些表的数据丢失,丢失的两个表都没有其他程序或触发器调用,不会是系统自动清理的,有没有人有思路,我想查查原因。数据库

解决方案 »

  1.   

    只能尝试从系统默认的trace文件找找。
    SELECT * INTO temp_trc
    FROM fn_trace_gettable(@trace_path, default);
      

  2.   

    麻烦问一下你说的trace是SQLSERVER的文件还是WINDOWS的,路径是什么,是不是WIDOWS的日志啊?
      

  3.   

    sql的默认trace路径 C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\LOG\log.trc
    参考http://msdn.microsoft.com/en-us/library/ms175513.aspx
      

  4.   

    找一找第三方软件,读取一下log日志,查看这段时间内对关键表的操作
    如果你数据库做了审计的话可以查看审计记录
      

  5.   

    如果没做日志备份的话,那么用log explore看看那段时间做了什么操作。trace一般没记录那么多。如果做了日志备份,那基本分析不出来
      

  6.   

    经确认为黑客入侵,通过开放的WEB服务灌入脚本删除表。