桓楠百科网

编程知识、经典语录与百科知识分享平台

教你如何在SQL SERVER还原模式下紧急数据库修复

公司一台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:\ZT\WIN-GGTDGE8S7Q8\ZT010\2017\UFMeta.ldf')
--数据库修复
DBCC CHECKDB ('UFMeta_010', repair_allow_data_loss);
--解除数据库的紧急模式
Alter Database UFMeta_010 set online
--解除数据库的单用户模式
Use master
go
sp_dboption 'UFMeta_010', single, false;

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言