SQL数据库如何压缩

SQL数据库如何压缩,第1张

可以使用DBCC

SHRINKDATABASE

和DBCC

SHRINKFILE

命令来压缩数据库

其中DBCC

SHRINKDATABASE

命令对数据库进行压缩,DBCC

SHRINKFILE

命令对数据库中指定的文件进行压缩。

DBCC

SHRINKDATABASE

命令语法如下:

DBCC

SHRINKDATABASE

(database_name

[,

target_percent]

[,

{NOTRUNCATE

|

TRUNCATEONLY}]

)

各参数说明如下:

target_percent:

指定将数据库压缩后,未使用的空间占数据库大小的百分之几。如果指定的百分比过大,超过了压缩前未使用空间所占的比例,则数据库不会被压缩。并且压缩后的数据库不能比数据库初始设定的容量小。

NOTRUECATE:

将数据库缩减后剩余的空间保留在数据库,中不返还给 *** 作系统

,如果不选择此选项,则剩余的空间返还给 *** 作系统。

TRUNCATEONLY

将数据库缩减后剩余的空间返还给 *** 作系统。使用此命令时SQL

Server

将文件缩减到最后一个文件分配,区域但不移动任何数据文件。选择此项后,target_percent

选项就无效了。

在程序组中,展开“Sqlserver”运行“查询分析器”。输入用户名、密码。

在工具栏的数据库列表中选择要 *** 作的数据库。

输入:select * from sysfiles 执行,可以看到下面的内容,记住其中的fileid字段的内容,也就是1或2,标识数据库的数据文件或日志文件,下面的命令要用到这里的值。

输入:dbcc shrinkdatabase(' 库名' ),收缩数据库,结果如下:可以看到压缩后的数据库文件的尺寸。

输入:dbcc shrinkfile(2, 0)执行,然后输入dbcc shrinkfile(1, 0)执行。两句命令中的第一个参数就是前面看到的FileID的值,表示了一个是日志文件,一个是数据文件。第二个参数0,表示收缩到初始大小。

输入:dbcc updateusage (0),执行更新 *** 作,完工!更新后可以跟之前的数据文件比对一下了,会有相对较大的尺寸上的优化了。

你用数据库管理器选中数据库,先分离,然后再附加,然后再点收缩,收缩的时候先收缩日志文件,一般能收缩很多,记得要填写数字啊,比如上面提示能收缩为0,你就填个5兆,这样预留一点空间,而且很快,收缩完日志文件之后再收缩数据库 同理比最小能收缩量大几兆就可以了,但是收缩数据库比较慢 需要很多时间


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9979927.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存