数据库在日积月累的操作过程中,不但自身体积会慢慢增长,其日志的容量大小同样也随着数据库实体文件的增长而增长,且会占用很大的空间.mssql数据库的大小包含数据(data)和事务日志(transactionlog)两个部分。
数据部分存储的是用户数据库中的数据,包含用户的数据表、视图、存储过程等等内容。
数据部分一般存储与数据库文件组中的.mdb文件中。一般来说,在正常使用的情况下,这
个部分的大小不会经常性地发生很大的变化,除非是用于存储论坛之类快速变化的数据内
容。一般而言,这个部分很少会需要缩小。
事务日志存储的是用户数据库操作的事务记录,主要是用于在数据库服务器发生故障(比
如电源故障之后),恢复数据库中的数据完整性而用的。这个部分一般存储于数据库文件
组中的.ldf文件中。这个部分的大小经常会发生剧烈的变化。
在某些情况下,由于用户的查询语句(sql语句)书写的问题,会造成数据库文件大小的
急剧膨胀,尤其是日志文件会变得非常大。这个时候需要对数据库加以缩小。缩小的操作
分为两个步骤:
步骤一 截断数据库中的日志内容
backup log 数据库名称 with truncate_only
步骤二 强制数据库压缩其大小
dbcc shrinkdatabase ( 数据库名称 , truncateonly )
这两个步骤需要使用查询分析器来执行。关于其具体的意义,请参考mssql数据库附带的
transact-sql的帮助文件。
还有一种方法就是在mssql企业管理器的数据库属性>>选项中,将故障还原>>模型设置为简单,然后确定,这样也可以直接减少日志文件的体积.
新闻热点
疑难解答