最近做了一个网站,上传到网上后,流量还比较大,结果数据库体积急速的增加,同步增加的还有数据库日志.
数据库日志记录的是对数据库的每部操作的事务,作用在于当数据库的数据损坏时可以还原.(相当于把日志里记录了的事务未完成的回滚,已完成的顺序执行下来).
但是,如果网站的数据库备分做的比较频繁,而且数据也不是需要非常精确的话,那么日志文件此时可能反而会给你带来不便了.在数据库更新操作多了后.日志文件体积会变的非常大,甚至比数据库文件还大的多,这样的话,对空间是个很大的浪费,如果限定大小,又会超成当达到指定体积时,用户访问页面则提示日志文件已满.
这时,我们可以用压缩下日志,具体方法是用
DUMP TRANSACTION "skyfire" WITH NO_LOG
DBCC SHRINKFILE( 'skyfire_log',100)
这可以把数据库日志压缩到指定的值,但看来解决不了根本问题,更好的解决方案还有待考虑...
数据库日志记录的是对数据库的每部操作的事务,作用在于当数据库的数据损坏时可以还原.(相当于把日志里记录了的事务未完成的回滚,已完成的顺序执行下来).
但是,如果网站的数据库备分做的比较频繁,而且数据也不是需要非常精确的话,那么日志文件此时可能反而会给你带来不便了.在数据库更新操作多了后.日志文件体积会变的非常大,甚至比数据库文件还大的多,这样的话,对空间是个很大的浪费,如果限定大小,又会超成当达到指定体积时,用户访问页面则提示日志文件已满.
这时,我们可以用压缩下日志,具体方法是用
DUMP TRANSACTION "skyfire" WITH NO_LOG
DBCC SHRINKFILE( 'skyfire_log',100)
这可以把数据库日志压缩到指定的值,但看来解决不了根本问题,更好的解决方案还有待考虑...