资源描述
SQL2005数据库无法附加或出现置疑时的修复方法(一)
注:本实例以JYPACS_US数据库做演示,实际操作时请将所有命令中的JYPACS_US更换为实际的数据库名。
1、停止数据库服务:打开SQL2005企业管理器,在服务器上点击鼠标右键,然后用左键点击“停止”菜单,停止SQL Server服务
2、数据库备份:将原数据库文件拷贝至其它盘符进行备份。如:将“D:\data”目录下的*.mdf和*.ldf拷贝至E盘或者直接将D盘下的data文件夹拷贝至E盘。
3、重启数据库服务:在服务器上点击鼠标右键,然后用左键点击“启动”菜单,重新启动SQL Server服务
4、删除数据库:将有问题的数据库删除。
5、新建数据库:鼠标右击数据库在弹出的菜单中选择“新建数据库”,新建一个同名的数据库(数据库文件的存储路径也要与原始文件路径相同)
6、替换数据库文件:先停止数据库服务(方法见步骤1),然后将E盘备份的数据库原文件复制后粘贴至原目录下替换新文件。如:将“E:\data”目录下的*.mdf和*.ldf文件复制粘贴至“D:\data”目录下替换。
7、重启数据库服务:重启SQL Server服务(方法见步骤3),,然后刷新数据库,此时可见数据库处于可疑或无法使用的状态。
8、设置紧急状态:在可疑的数据库上点击右键,然后用左键选择“新建查询”菜单,打开SQL Server的查询分析器,在命令串口中输入
alter database jypacs_us set emergency
然后按F5键或者点击执行按钮,将数据库置为可疑模式。
9、设置单用户模式:将SQL语句修改为
alter database jypacs_us set single_user
然后执行命令,将数据库置为单用户模式。
10、重建日志:清空命令窗口,然后输入
dbcc checkdb('jypacs_us',REPAIR_ALLOW_DATA_LOSS)
这个时间比较长。耐心等待!
如果有错误提示,再运行:
dbcc checkdb('jypacs_us',REPAIR_REBUILD)
进行修复。如果没有错误,可以跳过。
11、恢复多用户模式:清空命令窗口然后输入
alter database jypacs_us set multi_user
并执行,将数据库恢复为多用户模式。
刷新数据库,此时会看到数据库已恢复正常。
展开阅读全文