数据库在日积月累的 *** 作过程中,不但自身体积会慢慢增长,其日志的容量大小同样也随着数据库实体文件的增长而增长,且会占用很大的空间MSSQL数据库的大小包含数据(Data)和事务日志(TransactionLog)两个部分。 数据部分存储的是用户数据库中的数据,包含用户的数据表、视图、存储过程等等内容。数据部分一般存储与数据库文件组中的mdb文件中。一般来说,在正常使用的情况下,这个部分的大小不会经常性地发生很大的变化,除非是用于存储论坛之类快速变化的数据内容。一般而言,这个部分很少会需要缩小。 事务日志存储的是用户数据库 *** 作的事务记录,主要是用于在数据库服务器发生故障(比如电源故障之后),恢复数据库中的数据完整性而用的。这个部分一般存储于数据库文件组中的ldf文件中。这个部分的大小经常会发生剧烈的变化。 在某些情况下,由于用户的查询语句(SQL语句)书写的问题,会造成数据库文件大小的急剧膨胀,尤其是日志文件会变得非常大。这个时候需要对数据库加以缩小。缩小的 *** 作分为两个步骤: 步骤一 截断数据库中的日志内容
打开数据库名称上的右键菜单项属性,在属性窗口的文件选项卡中设置数据库日志文件的初始大小值,并通过取消勾选启用自动增长关闭数据库日志文件的自动增长功能,步骤如下图:
大约110M,
比如你数据库某一张表有三个字段:一个long型,一个varchar(100) 型,一个date型。long型占用8个字节(一个字节8位),data占用8字节。那么一行占用:8+100+8=116Byte。那么100万行,大约有110M。这是三列。如果你是10列,你就可以粗略估计出来了。
1先分离数据库,然后删除日志文件,再附件数据库。
2收缩文件,选择日志文件,设置将文件收缩到0M,试了一下,只能从65G收缩到55G,也就是只释放了未使用的空间。方法 二、
1选中数据库,右键属性/选项,把恢复模式从“完整”改为“简单”。
2选中数据库,右键任务/收缩文件,选择日志文件,设置将文件收缩为0M,确定。
3再将恢复模式从“简单”-“完整”即可。
sql server数据库日志文件过大不会影响运行速度,但是会导致数据无法写入。
SQL Server数据库中,当日志文件过大或者日志已满时就会影响到数据库的正常工作。而日志文件已满常常会造成SQL Server数据库无法写入的问题。
解决方法:
1、右键数据库→属性→选项→故障还原模型→设为简单→确定;
2、右键数据库→所有任务→收缩数据库→确定;
3、右键数据库→属性→选项→故障还原模型→设为大容量日志记录→确定。
你是sql server数据库吗,如果是的话如下
use master
go
if exists(select from sysdatabases where name = 'BOOK')
drop database BOOK
go
create database BOOK
(
name='BOOK_data',
filename='D:\BOOK_datamdf',
size=2MB,
maxsize=50MB,
filegrowth=2MB
)
LOG ON
(
name='BOOK_log',
filename='D:\BOOK_logldf',
size=2MB,
maxsize=10MB,
filegrowth=6MB
)
go
以上就是关于如何压缩MSSQL数据库日志的大小全部的内容,包括:如何压缩MSSQL数据库日志的大小、如何限定SQL SERVER数据库的日志为固定大小、syslog日志100万条占多少存储等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)