您的位置:首页 > 数据库

Sql server 日记 (收缩数据库,DUMP日志)

2012-01-04 16:29 204 查看
转自

http://blog.csdn.net/liuhuayang/article/details/5771208

数据库服务器磁盘空间是一天比一天少,已经加了一块500G的硬盘了,可RAID5下也没有起到什么太大的作用。 看看能不能从数据库中要回点空间。



先看看未分配的数据库空间有多少



1 使用 sp_spaceused 命令查看当前unallocated space 的空间, 还真的不少





那既然有不少的未分配空间,开始收缩数据库好了。



1 在保证数据库正常备份的情况下,DUMP日志



2005 数据库中可以使用



use [目标数据库]

go



backup log [目标数据库] with no_log



go



dbcc shrinkdatabase ('目标数据库', 20, truncateonly)



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







结果出来了,

EstimatedPages

数据库引擎估计文件能够收缩到的 8 KB 页数。







EstimatedPages

数据库引擎估计文件能够收缩到的 8 KB 页数

EstimatedPages

数据库引擎估计文件能够收缩到的 8 KB 页数









任务完成。



分析: 在2005上可以使用的命令已经在sql server 2008上不能使用了



sql server 2008 不在支持 backup log with no_log ,



需要替换为



USE [master]

GO

ALTER DATABASE [目标数据库] SET RECOVERY SIMPLE WITH NO_WAIT

GO



DBCC shrinkdatabase ('目标数据库', truncateonly)



USE [master]

GO

ALTER DATABASE [目标数据库] SET RECOVERY FULL WITH NO_WAIT

GO
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: