专业虚拟主机提供商! 正规合法诚信公司、拥有ICP/ISP双经营许可证
域名空间实时开通立即使用,几分钟即可完成
安全方便的网上支付,超强的域名空间管理程序
我要购买空间,请点这里
我要注册域名,请点这里
我要建设网站,请点这里
我要续费域名,请点这里
我要续费空间,请点这里
我要在线支付,请点这里
首 页 特惠套餐 域名注册 虚拟主机 托管租用 FTP空间 数据库 企业邮局 网站建设 联系我们 付款方式
 | 网站首页 | 虚拟主机资讯 | 域名注册资讯 | 托管租用资讯 | 网络编程 | 网站备案 | 系统安全 | 源码下载 | 
您现在的位置: IDC资讯网 >> 网络编程 >> MYSQL >> 正文
SQL Server 用户自定义的数据库修复           ★★★
SQL Server 用户自定义的数据库修复
点击数: 更新时间:2009-8-28 16:59:12

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

一、自动应用重做日志

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;

2、 打开状态下的完全介质恢复。

SQL>SELECT d.file# f#,d.name,d.status,
h.status from v$datafile d,v$datafile_header h
WHERE d.file#=h.file#;
查询哪些数据文件被自动设置为脱机状态;
SQL>ALTER TABLESPACE users OFFLINE TEMPORARY;

将包含损坏数据文件的表空间设置为脱机状态;将数据文件恢复到原来的位置上,如果介质故障无法排除,需要将数据文件恢复到其它位置上;利用备份修复丢失或损坏的数据文件;如果修复后的数据文件不在原来的位置上,需要使用ALTER DATABASE RENAME FILE …TO …语句在控制文件中更新它们的信息。

SQL>RECOVER TABLESPACE users AUTOMATIC
对包含损坏数据文件的脱机表空间进行恢复;
SQL>ALTER TABLESPACE users ONLINE;

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

1、 不完全恢复的操作准则:

在恢复前后都对数据库进行完全备份。

完成不完全介质恢复后,检查数据库是否已经恢复到了目标时刻下的状态。

完成不完全介质恢复后,将归档重做日志文件移动到其它位置保存。

2、 基于时间的不完全恢复:

对数据库进行一次完全备份,包括控制文件和所有的联机重做日志文件。

SQL>SHUTDOWN ABORT:确定不完全介质恢复的目标时间,即你需要将数据库恢复到哪个时刻下的状态,然后确定需要使用哪些备份来对数据进行修复,数据库修复所使用的控制文件备份应当能够正确反映出目标时刻下数据库的物理结构,所使用的数据文件备份应当是在目标时刻之前创建的,而且必须修复所有的数据文件,如果没有在目标时刻之前建立的数据文件备份,需要重新创建空白的数据文件。

如果在数据库中包含在目标时刻之后建立的数据文件,不要对这个数据文件进行修复,因为在完成不完全恢复后的数据库中根本不应当存在这个数据文件;将数据文件恢复到原来的位置上,如果介质故障无法排除,则恢复到其它位置上;利用选定的备份文件修复所有的控制文件和数据文件。

SQL>STARTUP MOUNT 启动实例并加载数据库;如果修复后的数据文件不在它们原来的位置上,需使用ALTER DATABASE RENAME FILE … TO …语句在控制文件中更新它们的信息。

SQL>SELECT name,status FROM V$DATAFILE;
确定所有数据文件都处于联机
SQL>ALTER DATABASE DATAFILE … ONLINE;
将数据文件恢复为联机;
SQL>RECOVER DATABASE UNTIL TIME ‘2004-02-01:12:30:30’
如果控制文件是利用备份修复的,
必须在RECOVER名利中指定USING BACKUP CONTROLFILE子句;
SQL>ALTER DATABASE OPEN RESETLOGS;

立即对数据库进行一次完全备份。

3、 基于撤销的不完全恢复。

SQL>RECOVER DATABASE UNTIL CANCEL:其它步骤同基于时间的不完全恢复。

4、 基于SCN的不完全恢复。

在进行基于SCN的不完全恢复时,oracle会在应用了所有具有小于等于指定SCN的事务的重做记录之后终止恢复过程。

RESETLOGS选项在如下三种情况下,必须使用RESETLOGS选项打开数据库:

1、 在执行任何类型的不完全介质恢复之后;

2、 在使用备份修复控制文件后(在RECOVER命令中使用USING BACKUP CONTROLFILE子句);

在没有联机重做日志文件备份的情况下对不归档数据库进行完全恢复之后。

文章录入:jac0773    责任编辑:jac0773 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新推荐  更多内容
    最新热门  更多内容
    资讯中心首页
    | 虚拟主机资讯 | 域名注册资讯 | 托管租用资讯 | 网络编程 | 网站备案 | 系统安全 | 源码下载 |
    关于我们 | 联系我们 | 产品价格 | 代理加盟 | 咨询反馈 | 诚聘英才 | 在线对话系统 | ASP技术网 | 帮助中心 | 网站地图
    ICP/ISP证B2-20050322
    ICP/ISP经营许可证编号:粤ICP证B2-20050322 网站备案号:粤B2-20050322号
    客服热线:0755-26499456 0755-26499435 [共8线] 24小时值班:0755-21852765 [更多]
    客服QQ:
    [ 63103 ]
    [ 959260 ]
    代理咨询:
    [ 519065 ]
    [更多]
    客户服务中心:深圳市南山区桃园路前海金岸金丰阁706  邮编:518052
    本站推广词:动态空间 | 网站空间 | 虚拟主机 | 深圳网站建设 | 空间购买 | 域名空间 | ASP空间申请购买
    服务范围:广州·深圳·东莞·珠海·汕头·惠州·中山·佛山·上海·重庆等全国其它地区
    广东省深圳市稳速网络科技有限公司版权所有 严禁以任何形式进行复制、抄袭