1、用BACKUP LOG database WITH NO_LOG清除日志
把数据库属性中的故障还原模型改为“简单”可以大大减慢日志增长的速度。
用BACKUP LOG database WITH NO_LOG命名后,会截断不活动日志,不减小物理日志文件的大小,但逻辑日志会减小,收缩数据库后会把不活动虚拟日志删除来释放空间,不会损坏数据。
如果日志被截断并收缩数据库后,就不能直接用最近的一个全库备份做时间点还原,建议立即备份数据库,以防万一。
2、sql server运行中,删除主数据库事务日志文件,步骤如下:
(1)、分离数据库管理器-数据库-右击要删除日志的数据库-所有任务-分离数据库
(2)、然后删除日志文件
(3)、然后再附加数据库
企业管理器-数据库-右击数据库-所有任务-附加数据库时只附加mdf.
3、压缩SQL数据库及日志的详细方法
可以在数据库属性选项中选择“Auto shrink”选项,让系统自动压缩数据库,也可以用人工的方法来压缩。
SQL Server中一个数据库可以对应多个物理文件,其中有一个的主数据库文件,扩展名为MDF,其他为次数据库文件,扩展名为NDF。可以将不同的文件存放在不同的驱动器上,可以提高数据访问速度。文件组是逻辑概念,主要目的是将文件分组管理。
create database db3
on
primary --主文件组
(name='db3_dat1',--数据库主文件
filename='d:\db3_dat1.mdf',
size=10mb,
maxsize=100mb,
filegrowth=10%
),
(name='db2_dat2',--主文件组,是次数据库文件
filename='d:\db2_dat2.ndf',
size=10mb,
maxsize=100mb,
filegrowth=10%
),
filegroup db3g1 --第2个文件组
(name='db3_dat3', --第2个文件组中的次数据库
filename='d:\db2_dat3.ndf',
size=10mb,
maxsize=30mb,
filegrowth=5mb
),
(name='db3_dat4', --第2个文件组中的次数据库
filename='d:\db2_dat4.ndf',
size=5mb,
maxsize=30mb,
filegrowth=5mb
),
filegroup db3g2 --第三个文件组
(name='db3_dat5', ----第三个文件组中的次数据库
filename='d:\db2_dat5.ndf',
size=10mb,
maxsize=50mb,
filegrowth=20%
)
log on
(name='db3_log', --日志文件
filename='d:\db3_log.ldf',
size=20mb,
maxsize=100mb,
filegrowth=10mb
)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)