天天看点

解决SQL SERVER LDF文件过大的问题

我的SQL server数据库仅用作分析用, 不需要考虑数据备份和恢复的问题. 每天都会增长大量的数据, 现在碰到的问题是, ldf 文件增长的非常厉害, 需要压一压. 

参考文章: 

http://stackoverflow.com/questions/56628/how-do-you-clear-the-sql-server-transaction-log

压缩ldf文件的操作步骤如下:

1.将数据库恢复模式调整为simple模式

2.定期做手动shrink库, 比如每12小时

DBCC SHRINKDATABASE(myXXDB)   

但将数据库设置为自动shrink后, 好像并不起作用, ldf还是增长得很厉害.   

ALTER DATABASE myXXDB SET AUTO_SHRINK ON

如果你的数据库恢复模式不是simple模式的数据库, 定期做如下步骤, 也可以:

1. 定期备份log到NO_LOG或者磁盘上

BACKUP LOG myXXDB WITH NO_LOG

BACKUP LOG myXXDB TO DISK = your_pathy WITH INIT, COMPRESSION;

2. 在备份后, 收缩数据库

DBCC SHRINKDATABASE(myXXDB)