南京管家婆|南京管家婆软件|南京管家婆软件代理电话:4006-025-015

网站首页 > 新闻资讯 > 干货分享

日志过大,有“它”就够了

年结存在即,可能有朋友会遇到,备份后的数据无法恢复,恢复报错或者恢复后提示正在还原的情况,出现这种情况,很可能是此数据的日志文件很大了导致的。

出现日志文件大,备份无法恢复的情况,可以采用以下方法,对帐套数据库进行日志收缩后,重新备份数据,然后再恢复。以下是不同数据库的日志收缩方法:


SQL2000、SQL2005数据库

在当前帐套中,依次执行以下的语句

1、清空日志:

DUMP TRANSACTION 

数据库 WITH no_log

2、截断事务日志:

BACKUP LOG 数据库 WITH no_log

3、收缩数据库:

DBCC SHRINKDATABASE (数据库)

4、为了以后能自动收缩,做如下设置:

企业管理器--服务器--右键数据库--属性--选项:

自动收缩语句设置方式:

EXEC sp_dboption 

'数据库','autoshrink','true'

SQL2008数据库

1、 在数据库新建查询中,执行以下脚本

(注意:其中DNName为要准备处理的数据库名称,DNName_Log为日志逻辑文件名称,请根据实际的情况修改)

USE[master]

GO

ALTER DATABASE DNName SET RECOVERY SIMPLE WITH NO_WAIT

GO

ALTER DATABASE DNName SET RECOVERY SIMPLE   --简单模式

GO

USEDNName

GO

DBCC SHRINKFILE (N'DNName_Log',11, TRUNCATEONLY)

GO

USE[master]

GO

ALTER DATABASE DNName SET RECOVERY FULL WITH NO_WAIT

GO

ALTER DATABASE DNName SET RECOVERY FULL  --还原为完全模式

GO

(若不清楚该数据库的日志逻辑文件名称,可以通过下面的方法查询)

右击要处理的数据库,—属性—文件

1.jpg

 脚本执行完毕后,再点要处理的数据库,右键选择—‘任务’—收缩—数据库

2.jpg


下面附上执行脚本的步骤:

电脑桌面左下角,点击开始——所有程序——Microsoft SQL Server 2005——SQL Server Management Studio——点开在弹出的窗口中,服务器名称默认是填写好的不用管,身份验证——选择Windows 身份验证——连接登录
登录进入数据库之后 找到要执行脚本的账套 右键---新建查询--然后将脚本复制粘贴进去---点击上方红色感叹号执行即可!

3.jpg

4.jpg


Powered by MetInfo 5.3.19 ©2008-2020 www.metinfo.cn