SQL2000我尝试过将17G的数据库收缩到5G,收缩了5个小时(不是普通PC,是服务器,具体配置忘了)没搞完,最后忍受不了停了,另建一个数据库将数据库导入,删除旧数据库。我的经验是,占空比越大,收缩越慢,所以从此后我都建个作业,每周空闲时
下面有两个SQL语句可以达到在SQL Server 2005/2008压缩指定数据库文件和日志的大小的效果:
1、DBCC SHRINKDATABASE (Transact-SQL)
收缩指定数据库中的数据文件和日志文件的大小。
语法
DBCC SHRINKDATABASE
( 'database_name' | database_id | 0
[ ,target_percent ]
[ , { NOTRUNCATE | TRUNCATEONLY } ]
)
[ WITH NO_INFOMSGS ]
参数
'database_name' | database_id | 0 要收缩的数据库的名称或 ID。如果指定 0,则使用当前数据库。
target_percent 数据库收缩后的数据库文件中所需的剩余可用空间百分比。
NOTRUNCATE 通过将已分配的页从文件末尾移动到文件前面的未分配页来压缩数据文件中的数据。target_percent 是可选参数。 文件末尾的可用空间不会返回给 *** 作系统,文件的物理大小也不会更改。因此,指定 NOTRUNCATE 时,数据库看起来未收缩。 NOTRUNCATE 只适用于数据文件。日志文件不受影响。
TRUNCATEONLY 将文件末尾的所有可用空间释放给 *** 作系统,但不在文件内部执行任何页移动。数据文件只收缩到最近分配的区。如果与 TRUNCATEONLY 一起指定,将忽略 target_percent。 TRUNCATEONLY 只适用于数据文件。日志文件不受影响。
WITH NO_INFOMSGS 取消严重级别从 0 到 10 的所有信息性消息。
结果集
列名 说明
DbId 数据库引擎试图收缩的文件的数据库标识号。
FileId 数据库引擎尝试收缩的文件的文件标识号。
CurrentSize 文件当前占用的 8 KB 页数。
MinimumSize 文件最低可以占用的 8 KB 页数。这与文件的最小大小或最初创建时的大小相对应。
UsedPages 文件当前使用的 8 KB 页数。
EstimatedPages 数据库引擎估计文件能够收缩到的 8 KB 页数。
用户在使用Access数据库的时候,在某一种情况下有可能出现数据库损坏的情况 损坏的数据库不能正常使用,在这种情况下需要使用数据库压缩和修复工具重新修复Access数据库
下载数据库文件--[如果是asp的扩展名,请改为mdb的扩展名]--用ACCESS打开--选择工具--数据库实用工具--压缩和修复数据库--[改回asp的扩展名]--上传覆盖原来数据库文件
access数据库由于经常经常增删改查等 *** 作,将会越来越大,有一种有效的方法可以减压缩access数据库的大小
首先打开你要压缩的access数据库,然后选择菜单栏上的工具->数据库实用工具->压缩和修复数据库 就可以了。
以上就是关于sqlserver2000数据库文件mdf已经达到70g了,怎么压缩全部的内容,包括:sqlserver2000数据库文件mdf已经达到70g了,怎么压缩、如何压缩SQL Server 2005指定数据库文件和日志的大小、如何压缩和修复数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)