SQL收缩数据库时8985错误
服务器上有个数据库达到了4G,其日志文件也高达14G。于是想清空日志压缩一下数据库。但是在收缩数据库时,显示 错误8985。。认真比对后发现,显示的数据库文件名与实际的数据库逻辑文件名并不一致。
这里显示 sms_data 而实现的文件名是 zsms_data
解决办法:
使用 ALTER DATABASE database_name MODIFY FILE (NAME = logical_file_name, NEWNAME= new_logical_file_name) 修改文件名为一致
最先想当然地使用
ALTER DATABASE zsms MODIFY FILE (NAME = 'sms_data', NEWNAME= 'zsms_data')
报错:sms_data 不存在
改用
ALTER DATABASE zsms MODIFY FILE (NAME = 'zsms_data', NEWNAME= 'zsms_data')
显示成功
查看显示的文件名,一致了。
再执行压缩,OK!成功!收缩为 312M
-------------
这里不清楚为何显示的名称会不一致,可能原因是还原数据时更改过逻辑文件名。费了大半天的时间,而网上相关的资料极少,难道是从来没有人碰到过这个问题吗?这里记录一下备考。
good