整理一个空数据库

欢欢欢欢 发表于 2018-8-28 11:52

S1:备份数据库

--完整备份
declare @sql varchar(1000)
set @sql ='E:\MLD\DB\KZB_'+ replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),' ',''),':','') +'.bak'
set @sql = 'backup database KZB to disk ='''+@sql+'''' 
exec (@sql)
 
S2:还原到本地
--恢复
restore database [KZB]
from disk='D:\kzb\db\KZB_20180828113319.bak' 
with
move 'HuiLinSoftDB' to 'D:\kzb\db\HuiLinSoftDB.mdf',
move 'HuiLinSoftDB_log' to 'D:\kzb\db\HuiLinSoftDB_log.ldf',norecovery 
 
--
restore database [KZB] with recovery

S3:truncate所有表

如果没有需要特殊保留的数据,就直百度脚本,很方便;如果有些基础设置表需要保留数据,那就只能自己写一个一个表truncate了。

S4:收缩数据库,包括日志文件和数据文件

其中,收缩日志文件要先将数据库“恢复模式”改为简单。具体摸这里

记得一定要收缩,否则数据占用的空间并不会缩小