SQL Server 用户自定义的数据库修复
2007-05-17 09:34:53 来源:WEB开发网将包含损坏数据文件的表空间设置为脱机状态;将数据文件恢复到原来的位置上,如果介质故障无法排除,需要将数据文件恢复到其它位置上;利用备份修复丢失或损坏的数据文件;如果修复后的数据文件不在原来的位置上,需要使用ALTER DATABASE RENAME FILE …TO …语句在控制文件中更新它们的信息。
SQL>RECOVERTABLESPACEusersAUTOMATIC
对包含损坏数据文件的脱机表空间进行恢复;
SQL>ALTERTABLESPACEusersONLINE;
四、 归档模式下的不完全介质恢复
1、 不完全恢复的操作准则:
在恢复前后都对数据库进行完全备份。
完成不完全介质恢复后,检查数据库是否已经恢复到了目标时刻下的状态。
完成不完全介质恢复后,将归档重做日志文件移动到其它位置保存。
2、 基于时间的不完全恢复:
对数据库进行一次完全备份,包括控制文件和所有的联机重做日志文件。
SQL>SHUTDOWN ABORT:确定不完全介质恢复的目标时间,即你需要将数据库恢复到哪个时刻下的状态,然后确定需要使用哪些备份来对数据进行修复,数据库修复所使用的控制文件备份应当能够正确反映出目标时刻下数据库的物理结构,所使用的数据文件备份应当是在目标时刻之前创建的,而且必须修复所有的数据文件,如果没有在目标时刻之前建立的数据文件备份,需要重新创建空白的数据文件。
如果在数据库中包含在目标时刻之后建立的数据文件,不要对这个数据文件进行修复,因为在完成不完全恢复后的数据库中根本不应当存在这个数据文件;将数据文件恢复到原来的位置上,如果介质故障无法排除,则恢复到其它位置上;利用选定的备份文件修复所有的控制文件和数据文件。
SQL>STARTUP MOUNT 启动实例并加载数据库;如果修复后的数据文件不在它们原来的位置上,需使用ALTER DATABASE RENAME FILE … TO …语句在控制文件中更新它们的信息。
SQL>SELECTname,statusFROMV$DATAFILE;
确定所有数据文件都处于联机
SQL>ALTERDATABASEDATAFILE…ONLINE;
将数据文件恢复为联机;
SQL>RECOVERDATABASEUNTILTIME‘2004-02-01:12:30:30’
如果控制文件是利用备份修复的,
必须在RECOVER名利中指定USING BACKUP CONTROLFILE子句;
SQL>ALTERDATABASEOPENRESETLOGS;
立即对数据库进行一次完全备份。
3、 基于撤销的不完全恢复。
SQL>RECOVER DATABASE UNTIL CANCEL:其它步骤同基于时间的不完全恢复。
4、 基于SCN的不完全恢复。
在进行基于SCN的不完全恢复时,oracle会在应用了所有具有小于等于指定SCN的事务的重做记录之后终止恢复过程。
RESETLOGS选项在如下三种情况下,必须使用RESETLOGS选项打开数据库:
1、 在执行任何类型的不完全介质恢复之后;
2、 在使用备份修复控制文件后(在RECOVER命令中使用USING BACKUP CONTROLFILE子句);
在没有联机重做日志文件备份的情况下对不归档数据库进行完全恢复之后。
- ››sql server自动生成批量执行SQL脚本的批处理
- ››sql server 2008亿万数据性能优化
- ››SQL Server 2008清空数据库日志方法
- ››sqlserver安装和简单的使用
- ››SQL Sever 2008 R2 数据库管理
- ››SQL SERVER无法安装成功,sqlstp.log文件提示[未发...
- ››Sql Server中通过父记录查找出所有关联的子记录
- ››SqlServer触发器、存储过程和函数
- ››SQL Server 中的事务(含义,属性,管理)
- ››Sqlite数据库插入和读取图片数据
- ››Sql server 2005拒绝了对对象 'xx表' (数...
- ››Sql server 2005拒绝了对对象 'xx表' (数...
更多精彩
赞助商链接