服务器上有个数据库达到了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

-------------

这里不清楚为何显示的名称会不一致,可能原因是还原数据时更改过逻辑文件名。费了大半天的时间,而网上相关的资料极少,难道是从来没有人碰到过这个问题吗?这里记录一下备考。

标签: sql, 收缩, 错误, 解决

仅有一条评论

  1. Lees Lees

    good

评论已关闭