日志文件是用来记录事务对数据库更新 *** 作的文件,主要有两种格式:以记录为单位的日志文件和以数据块为单位的日志文件。
各个事务的开始StartTransaction标记各个事务的结束Commit或Rollback标记各个事务的所有更新 *** 作。
对以数据块为单位的日志文件,日志记录的内容包括事务标识和被更新的数据块。由于将更新前的整个块和更新后的整个块都放入日志文件中,因而 *** 作的类型和 *** 作对象等信息就不必放入日志记录中。
日志是SQL Server自身用来回滚事务用的,有第三方的日志读取工具可以从日志文件中读取之前的 *** 作信息。比如:误删了一条记录怎样通过日志文件使之恢复?
这个如果不用第三方工具而只使用SQL Server本身的功能有两种方法
第一种比较简单,在 *** 作数据库的时候,首先用begin tran语句显式的标记一个事务,然后删除数据,如果确定需要恢复,则执行rollback tran语句,删除 *** 作就会被回滚。使用begin tran语句标记事务,如果不需要回滚,则使用commit tran进行提交,提交后就不能再回滚了。
第二种方法是通过还原数据库的方式,大致步骤如下:
1.首先数据库的恢复模式必须是“完全”或者“大容量日志”模式
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)