天天看点

MS SQL 数据库状态为SUSPECT的处理方法

当sql server数据库状态为质疑(suspect)状态时,我们可以用以下方法来处理:

1. 修改数据库为紧急模式:alter database dbname set emergency .

2. 检查数据库的完整性:dbcc  checkdb(‘dbname’)

3. 检查没有错误则恢复数据库为正常模式:alter database  dbname set online;

4  如检查数据库有错误则修改数据库为单用户模式,依情况选择以下命令行进行修复数据;

code snippet

dbcc checkdb('dbname',  repair_fast);

dbcc checkdb('dbname',  repair_rebuild);

dbcc checkdb('dbname',  repair_allow_data_loss);

修复完成后将数据库改为正常模式,重启sql服务或重启服务器。

   alter database dbname set emergency       /* 修改数据库为紧急模式*/

   alter database dbname set single_user      /* 修改数据库为单用户模式*/

   alter database dbname set multi_user       /* 修改数据库为多用户模式*/

   alter database dbname set online           /* 数据库从紧急&单用户&多用户模式恢复为正常模式*/

   dbcc checkdb('dbname')                     /* 检查数据库完整性*/

   dbcc checkdb('dbname', repair_fast)        /* 快速修复数据库*/

   dbcc checkdb('dbname', repair_rebuild)     /* 重建索引并修复*/

   dbcc checkdb('dbname', repair_allow_data_loss) /*如果必要允许丢失数据修复,数据库修复需在单用户模式下进行