科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道SQL Server 用户自定义的数据库修复(1)

SQL Server 用户自定义的数据库修复(1)

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

本文讲解了用户如何自定义的数据库修复。

作者:010032 来源:赛迪网技术社区 2007年8月30日

关键字: 修复 数据库 SQL Server SQL Server 各版本

  • 评论
  • 分享微博
  • 分享邮件
 

本文讲解了用户如何自定义的数据库修复。

一、自动应用重做日志

1、 利用SET AUTORECOVERY命令自动应用重做日志,完成对数据文件的修复操作。

SQL>STARTUP MOUNT:启动实例并加载数据库。

SQL>SET AUTORECOVERY ON:启用重做日志自动应用功能。

SQL>RECOVER DATABASE:恢复指定表空间、数据文件或整个数据库。

SQL>ALTER DATABASE OPEN:完成恢复后打开数据库。

2、 利用RECOVERY AUTOMATIC命令自动应用重做日志,完成对数据文件的修复操作。

SQL>STARTUP MOUNT:启动实例并加载数据库。

SQL>RECOVER AUTOMATIC DATABASE。

SQL>ALTER DATABASE OPEN:完成恢复后打开数据库。

二、 不归档模式下的数据库介质恢复

1、 将数据库恢复到原来的位置上。

SQL>SHUTDOWN IMMEDIATE 如果数据库仍然处于打开状态,关闭数据库;将数据库文件恢复到原来的位置上,利用最近一次建立的一致性完全备份对整个数据库进行恢复,必须对所有的数据文件与控制文件进行修复。

SQL>RECOVER DATABASE UNTIL CANCEL
SQL>CANCEL
SQL>ALTER DATABASE OPEN RESETLOGS;
将当前重做日志顺序号设置为1。

2、 将数据库恢复到新的位置上。

SQL>SHUTDOWN IMMEDIATE:如果数据库仍然处于打开状态,关闭数据库;将数据库文件恢复到新的位置上,利用最近一次建立的一致性完全备份对整个数据库进行恢复,必须对所有的数据文件与控制文件进行修复;对初始化参数文件中的CONTROL_FILES参数进行编辑,使它执行保存在新位置中修复后的控制文件。

SQL>STARTUP MOUNT:如果修复后的数据库文件处于新的位置,必须利用ALTER DATABASE RENAME FILE语句对控制文件进行修改,使它指向新位置中修复后的数据文件。如:

SQL>ALTER DATABASE RENAME FILE 
‘I: ora9ioradatasystem01.dbf’ TO ‘K: oracleoradatasystem01.dbf’;
SQL>RECOVER DATABASE UNTIL CANCEL
SQL>CANCEL
SQL>ALTER DATABASE OPEN RESETLOGS;
将当前重做日志顺序号设置为1。

三、 归档模式下的完全介质恢复

1、 关闭状态下的完全恢复。

SQL>SHUTDOWN ABORT(如果数据库处于打开状态,将它强行关闭):将数据文件恢复到原来的位置上,如果介质故障无法排除,需要将数据文件恢复到其它位置上;利用备份修复丢失或损坏的数据文件,也可利用ALTER DATABASE CREATE DATAFILE 语句重建一个空白的数据文件替换对视或损坏的数据文件。

SQL>STARTUP MOUNT:如果修复后的数据文件不在原来的位置上,需要使用ALTER DATABASE RENAME FILE …TO …语句在控制文件中更新它们的信息。

SQL>SELECT name,status FROM V$DATAFILE;
查询数据文件的名称和状态。
SQL>ALTER DATABASE DATAFILE … ONLINE;
将脱机数据文件改未联机。
SQL>RECOVER DATABASE 
或 SQL>RECOVER TABLESPACE users
或 SQL>RECOVER DATAFILE ‘I: ora9ioradatausers0.dbf;
SQL>ALTER DATABASE OPEN;
    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章