公司一台ERP服务器最近要做升级,该服务器之前机房空间调整时遭遇了意外断电,后经供应商修复过几次数据库故障。但在测试升级的过程中仍然遇到了不少一致性故障,大多故障都可以用DBCC CHECKDB搞定,但是某数据库经升级失败后变为还原模式,无法恢复正常也无法删除。
软件平台:Windows 2008 R2 + SQL Server 2008
硬件平台:VMware @ x86_64 based Intel Processers , Z97 Chipset
遇到这种情况的时候,需要移除数据库日志并重建日志
--将数据库置于单用户模式
Use master
go
sp_dboption 'UFMeta_010', single, true;
--将数据库置为紧急模式
ALTER DATABASE UFMeta_010 SET EMERGENCY
接着,停止 SQL Server 服务,删除数据库对应的日志文件,再启动 SQL Server 服务
--重建日志
alter database UFMeta_010 Rebuild Log on (name=UFMeta_010_LOG,filename='D:ZTWIN-GGTDGE8S7Q8ZT0102017UFMeta.ldf')
--数据库修复
DBCC CHECKDB ('UFMeta_010', repair_allow_data_loss);
--解除数据库的紧急模式
Alter Database UFMeta_010 set online
--解除数据库的单用户模式
Use master
go
sp_dboption 'UFMeta_010', single, false;
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。