SQL Server事务日志的几个常用操作

豆豆网   技术应用频道   2008年05月08日  【字号: 收藏本文

内容摘要:SQL Server事务日志主要是用来记录所有事务对数据库所做的修改,如果系统出现故障,它将成为最新数据的唯一来源。

  Sp_configure 'allow updates',1

  Reconfigure With Override

  接着运行以下语句,把Sysdatabases表中MYDB数据库的status属性设为‘37268’,把MYDB数据库设置为紧急模式。

  update sysdatabases set status=32768 where name=’MYDB’

  然后再把数据库MYDB设置为单用户模式,然后重启SQL Server服务器,并把数据库MYDB设为单用户模式

  Sp_dboption 'MYDB','single user', 'true'

  再运行以下语句,检查数据库MYDB

  DBCC CHECKDB(‘MYDB’)

  2)还原数据库的状态

  运行以下语句,就可以把数据库的状态还原:

  Update Sysdatabases Set status=28 Where name=’MYDB’

  Sp_Configure ’allow updates’,0

  Reconfigure With Override

  此时的数据库仍不能工作,还要进行以下的操作,才能恢复。

  3)利用DTS的导入导出向导,把数据库MYDB导入到一个新建数据库MYDBNEW中,然后新建一个数据库MYDBNEW,右击MYDBNEW,选择“所有任务”下的“导出数据”功能,打开导入向导,把表结构、数据视图和存储过程导入到MYDBNEW中,然后再用此功能把MYDBNEW库替换成原来的MYDB库即可。

  可以知道,恢复一个有活动事务的日志是麻烦多了,所以在数据库维护的时候,切不要小看事务日志。

  二、事务在不断增大的时候如何缩小日志

  当数据如在频繁修改或者删除的同时,事务的日志就会不断的增加,甚至超过了碰盘的大小,这时候就不能因此而直接删除了事务日志的LDF文件,否则可能会带来很大的麻烦。为了避免这种情况,我们需要有如下的操作:

来源:IT专家网    作者:松晨    责编:豆豆技术应用

正在加载评论...