比如:误删了一条记录怎样通过日志文件使之恢复?
这个如果不用第三方工具而只使用SQL Server本身的功能有两种方法
第一种比较简单,在操作数据库的时候,首先用begin tran语句显式的标记一个事务,然后删除数据,如果确定需要恢复,则执行rollback tran语句,删除操作就会被回滚。使用begin tran语句标记事务,如果不需要回滚,则使用commit tran进行提交,提交后就不能再回滚了。
第二种方法是通过还原数据库的方式,大致步骤如下:
1.首先数据库的恢复模式必须是“完全”或者“大容量日志”模式
Sqlserver2005下,日志文件太大,使其减小的方法。在打开SQL Server Management Studio并正常联接SQL服务器后,运行下面的三行:
( 注意将dbName代换为你的数据库名。)
backup log dbName with NO_LOG
backup log dbName with TRUNCATE_ONLY
DBCC SHRINKDATABASE(dbName)
注意,在SQL 2008之后的版本以上方法无效,需将数据库设为简单模式后再进行收缩。
此外,在SQL Server Management Studio中,以视窗方法操作也可以,操作步骤:
第一步:截断数据库日志,运行代码:
BACKUP LOG 要收缩的数据库名 WITH NO_LOG
第二步:收缩数据库日志文件:
1. 选择要收缩的数据库,点右键选择任务-收缩-文件
2. 在弹出的页面中,选择文件类型为日志
3.点确定。
使用对象资源管理器。在对象资源管理器中,连接到 SQL Server 数据库引擎实例,再展开该实例。
按日志文件查看器,习惯将错误日志归为SQL SERVER、 SQL SERVER 代理, Windows应用程序日志,数据库邮件等四类错误日志记录。如果还考虑维护计划、远程维护计划、作业历史记录日志信息,总共是7类日志信息文件。其中Windows应用程序日志类型又分为系统日志(System)、安全日志(Security)、应用程序日志(Application), PatchLink日志等几种,我在服务器(Windows Server 2008 R2 Standard)上打开SSMS,居然发现又多了HardwareEvents, Internet Explorer、Windows PowerShell等日志文件。这些都是系统的日志文件。你不必太纠结有多少种。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)