数据库shrink(数据库shrink操作)

http://www.itjxue.com  2023-01-26 00:06  来源:未知  点击次数: 

数据库收缩

收缩数据库

数据库中的每个文件都可以通过删除未使用的页的方法来减小。尽管数据库引擎会有效地重新使用空间,但某个文件多次出现无需原来大小的情况后,收缩文件就变得很有必要了。数据和事务日志文件都可以减小(收缩)。可以成组或单独地手动收缩数据库文件,也可以设置数据库,使其按照指定的间隔自动收缩。

文件始终从末尾开始收缩。例如,如果有个 5 GB 的文件,并且在 DBCC SHRINKFILE 语句中将 target_size 指定为 4 GB,则数据库引擎将从文件的最后一个 1 GB 开始释放尽可能多的空间。如果文件中被释放的部分包含使用过的页,则数据库引擎先将这些页重新放置到文件的保留部分。只能将数据库收缩到没有剩余的可用空间为止。例如,如果某个 5 GB 的数据库有 4 GB 的数据,并且在 DBCC SHRINKFILE 语句中将 target_size 指定为 3 GB,则只能释放 1 GB。

自动数据库收缩

将 AUTO_SHRINK 数据库选项设置为 ON 后,数据库引擎将自动收缩具有可用空间的数据库。此选项可以使用 ALTER DATABASE 语句来进行设置。默认情况下,此选项设置为 OFF。数据库引擎会定期检查每个数据库的空间使用情况。如果某个数据库的 AUTO_SHRINK 选项设置为 ON,则数据库引擎将减少数据库中文件的大小。该活动在后台进行,并且不影响数据库内的用户活动。

收缩数据库是什么意思?

收缩数据库就是把数据库不需要或者没有用的东西进行资源回收,简单的说就是数据库压缩,比如你数据库的很大,你收缩下数据库就不会有那么大了,还有一个办法就是删除数据库日志,具体代码:\x0d\x0aDUMP TRANSACTION [YZ] WITH NO_LOG --清空日志\x0d\x0aBACKUP LOG [YZ] WITH NO_LOG --截断事务日志\x0d\x0aDBCC SHRINKDATABASE([YZ]) --压缩数据库\x0d\x0aDBCC UPDATEUSAGE ([YZ]) --报告和更正 sysindexes 表的不正确内容\x0d\x0a\x0d\x0aexec sp_detach_db @dbname='数据库名'\x0d\x0aexec sp_attach_single_file_db @name='数据库名',@hysname='C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\数据库名.mdf'

sql数据库dbcc shrinkdatabase怎么用

DBCC SHRINKDATABASE

收缩指定数据库中的数据文件大小。

语法

DBCC SHRINKDATABASE

( database_name [ , target_percent ]

[ , { NOTRUNCATE | TRUNCATEONLY } ]

)

参数

database_name

是要收缩的数据库名称。数据库名称必须符合标识符的规则。有关更多信息,请参见使用标识符。

target_percent

是数据库收缩后的数据库文件中所要的剩余可用空间百分比。

NOTRUNCATE

导致在数据库文件中保留所释放的文件空间。如果未指定,将所释放的文件空间释放给操作系统。

TRUNCATEONLY

导致将数据文件中的任何未使用的空间释放给操作系统,并将文件收缩到上一次所分配的大小,从而减少文件大小,而不移动任何数据。不试图重新定位未分配页的行。使用 TRUNCATEONLY 时,忽略 target_percentis。

注释

Microsoft? SQL Server? 可收缩:

特定数据库的所有数据和日志文件。执行 DBCC SHRINKDATABASE。

一次一个特定数据库中的数据或日志文件。执行 DBCC SHRINKFILE。

数据库中SHRINKDATABASE是什么意思

是数据库收缩功能,将数据库压缩。压缩一些空间,整理一下数据页面.

(责任编辑:IT教学网)

更多

推荐Dreamweaver教程文章