数据库的修复档.doc
文本预览下载声明
1. 把数据库设置为紧急状态。
通过在“查询分析器”中执行:alter database PVLink set EMERGENCY 可以将数据库设置为紧急状态,此时数据库PVLink的图标改变成粉红色并出现“紧急”字样
2. 将数据库设置为单用户模式。
如果不设置为单用户模式,我们将无法使用带有效repair选项的DBCC CHECKDB来检查/修复数据库:
只要在“查询分析器”中执行:
use master
go
sp_dboption PVLink,single,true
即可。
3. 修复数据库
修复数据库主要使用DBCC来操作,一般来讲,我们可以使用以下三个选项来修复:
REPAIR_ALLOW_ DATA_LOSS
尝试修复报告的所有错误。这些修复可能会导致一些数据丢失。
REPAIR_FAST
仅为保持向后兼容性而保留。
REPAIR_REBUILD
执行由 REPAIR_FAST 执行的所有修复,包括需要较长时间的修复(如重建索引)。执行这些修复时不会有丢失数据的危险。
一般我们通过执行:DBCC CHECKDB(PVLink,REPAIR_REBUILD) 即可完成修复工作.
4.数据库应该可用了.
如果数据库此时仍然是紧急状态,可以通过:alter database PVLink set ONLINE ,把数据库变成在线状态。
alter database PVLink set ONLINE ,把数据库变成在线状态。
5.
SQL Server 2005数据库日志文件损坏的情况下如何恢复数据库
1)SQL Server 2005数据库删除日志文件
DUMP TRANSACTION DatabaseName WITH NO_LOG;declare @fileid int;select
@fileid=fileid from sysfiles where name like %Log;dbcc shrinkfile(@fileid)
第二
1)在某些偶然的情况下,会引起SQL Server 2005数据库日志文件的损坏,比如:硬件故障、计算机非正常重启或关机。
当SQL Server 2005数据库日志文件损坏时,可能会出现以下情况:
1、在SQL Server Management Studio中显示数据库处于置疑(suspect)状态。
2、事件日志可能会出现如下错误信息:
Could not redo log record (21737:686:9), for transaction ID (0:2334886), on page (1:37527), database Test (database ID 15). Page: LSN = (21735:299:5), type = 2. Log: OpCode = 3, context 19, PrevPageLSN: (21737:615:1). Restore from a backup of the database, or repair the database.
During redoing of a logged operation in database Test, an error occurred at log record ID (76116:286:2). Typically, the specific failure is previously logged as an error in the Windows Event Log service. Restore the database from a full backup, or repair the database.
3、无法分离数据库
4、用CREATE DATABASE DBName ON ( FILENAME = NDBFile ) FOR ATTACH_REBUILD_LOG附加数据库时出现提示:The log cannot be rebuilt because the database was not cleanly shut down.
恢复方法:
1、停止数据库服务。
2、将需要恢复的数据库文件复制到另外的位置。
3、启动数据库服务。
4、确认要恢复的数据库文件已经成功复制到另外的位置,然后在SQL Server Management Studio中删除要恢复的数据库。
5、新建同名的数据库(数据库文件名也要相同)。
6、停止数据库服务。
7、用第2步中备份的.mdf文件覆盖新数据库的同名文件。
8、启动数据库服务。
9、运行alter database dbname set emergency,
显示全部