建议恢复sqlserver.bak数据库文件后自动运行修正逻辑名
很多站点迁移数据库后,需要导入数据库备份,而且数据库名变了,而逻辑名客户无法自行修改,那么再压缩日志文件时就会出错。建议自动运行一段代码,查询导入后的逻辑名,并改为和数据库名一致。
同时,建议将数据库设为自动收缩,日志模式由完全改为简单,或者给个选项,用户自己设置。
select @logicname= name from 数据库名..sysfiles where
charindex('MDF',filename)>0 --查看数据文件的逻辑文件名
select @physicalname =filename from 数据库名..sysfiles where
charindex('MDF',filename)>0 --查看数据文件的路径
select @logicfilename== name from 数据库名..sysfiles where
charindex('LDF',filename)>0 --查看日志文件的逻辑文件名
select @physicallogname filename from 数据库名..sysfiles where
charindex('LDF',filename)>0 --查看日志文件的路径
alter database 数据库名称 modify file(name=@logicname, newname=@physicalname)
alter database 数据库名称 modify file(name=@logicfilename, newname=@physicallogname)
|
|