oracle怎样恢复表数据 unto

发布网友

我来回答

1个回答

热心网友

  一、控制文件的定义
  控制文件是一个非常小的文件,最多能增长到米左右,它包含其它数据库文件需要的目录。参数文件向实例提供控制文件的位置,控制文件向实例提供数据库文件和联机重做日志文件的具体信息。
  控制文件也包含数据库的一些其它信息,例如检查点发生的位置,数据库的名称,数据库创建的时间,归档日志的历史记录,RMAN的信息等。
  控制文件应该采用多路复用技术进行保护,应该复制多份,拷贝的文件应该分散在多个磁盘上避免磁盘故障造成全部丢失,丢失控制文件不是致命的,但是恢复起来相当麻烦。
  控制文件
  控制文件是相当小的文件(他们能长到 mb左右在极端的情况下),其中包含一个目录Oracle需要的其他文件。 参数文件告诉实例控制文件在哪里,并控制文件告诉实例数据库和联机重做日志文件的位置。
  控制文件还告诉Oracle其他东西,比如检查站发生的信息,数据库的名称(这应该匹配db_nameparameter在参数文件),数据库的时间戳是创建一个归档重做日志历史(这可以控制文件大在某些情况下),RMANinformation等等。
  控制文件应该多路复用通过硬件(RAID)或Oracle突袭或镜像时不可用。 应该存在多个副本,副本应存储在单独的磁盘避免失去他们,以防你有磁盘故障。 它失去控制文件,只是让不是致命的复苏更加困难。
  控制文件是一个开发人员可能不会处理。 DBA,他们是数据库的一个重要组成部分,但toa软件开发人员他们并不真正相关二、控制文件的备份方法
  1、使用rman备份的时候自动备份
  配置controlfile autobackup;在使用RMAN备份的时候自动备份控制文件配置controlfile autobackup清晰;清空配置的参数2、使用命令手动备份
  当前controlfile备份;
  [oracle@node0 ~]rman target /美元
  恢复管理器:释放11.2.0.1.0——生产于2014年5月13日09:19:43星期二版权(c)1982、2009、Oracle和/或其附属公司。 保留所有权利。
  连接到目标数据库:HNJY(DBID = 1400365636)
  当前controlfile RMAN >备份;
  在13-MAY-14开始备份
  使用目标数据库控制文件,而不是恢复目录
  分配渠道:ORA_DISK_1
  渠道ORA_DISK_1:SID = 39设备类型=磁盘
  渠道ORA_DISK_1:开始完全数据文件备份集
  渠道ORA_DISK_1:指定功能的备份集
  包括电流控制文件备份集
  在13-MAY-14通道ORA_DISK_1:起始段1
  在13-MAY-14通道ORA_DISK_1:成品1
  块处理= / u01 / app / oracle /产品/ 11.2.0 / dbhome_2 / dbs / 02 p85upu_1_1标签= TAG20140513T091958 =没有发表评论通道ORA_DISK_1:备份设置完成,运行时间:00:00:01完成备份在13-MAY-14
  控制文件和SPFILE Autobackup 13-MAY-14
  块处理=/ u01 / app / oracle / proct / 11.2.0 / dbhome_2 / dbs / c - 1400365636 - 1400365636 - 00评论=没有备份文件的位置完成了控制文件和SPFILE Autobackup 13-MAY-143,备份数据文件的时候同时备份控制文件
  备份数据文件4 inculude当前controlfile;
  RMAN >备份数据文件5包括当前controlfile;
  在13-MAY-14开始备份
  分配渠道:ORA_DISK_1
  渠道ORA_DISK_1:SID = 39设备类型=磁盘
  渠道ORA_DISK_1:开始完全数据文件备份集
  渠道ORA_DISK_1:指定功能的备份集
  输入数据文件文件数量= 00005名= / u01 / app / backuptest / example01.dbf在13-MAY-14通道ORA_DISK_1:起始段1
  在13-MAY-14通道ORA_DISK_1:成品1
  块处理= / u01 / app / oracle /产品/ 11.2.0 / dbhome_2 / dbs / 04 p85vcm_1_1标签= TAG20140513T092958 =没有发表评论通道ORA_DISK_1:备份设置完成,运行时间:00:00:07渠道ORA_DISK_1:开始完全数据文件备份集
  渠道ORA_DISK_1:指定功能的备份集
  包括电流控制文件备份集
  在13-MAY-14通道ORA_DISK_1:起始段1
  在13-MAY-14通道ORA_DISK_1:成品1
  块处理= / u01 / app / oracle /产品/ 11.2.0 / dbhome_2 / dbs / 05 p85vct_1_1标签= TAG20140513T092958 =没有发表评论通道ORA_DISK_1:备份设置完成,运行时间:00:00:01完成备份在13-MAY-14
  控制文件和SPFILE Autobackup 13-MAY-14
  块处理= / u01 / app / oracle /产品/ 11.2.0 / dbhome_2 / dbs / c - 1400365636 - 1400365636 - 01年=没有发表评论完成了控制文件和SPFILE Autobackup 13-MAY-144,在sql层面进行备份
  SQL >改变数据库备份controlfile跟踪为“/ u01 / app / oracle / oradata / hnjy / hotback / controlfile.trc”;数据库修改。
  SQL > !
  (oracle@node0 ~)$ ls - l / u01 / app / oracle / oradata / hnjy / hotback / controlfile.trc甲骨文oinstall -rw-r - r - 6232 5月13日09:26 / u01 / app / oracle / oradata hnjy / hotback / controlfile.trc三、控制文件的恢复
  1、控制文件没有全部丢失
  从其它的控制文件拷贝
  [oracle@node0 backuptest]美元rm - f control01。 ctl模拟一个控制文件损坏[oracle@node0 backuptest]美元退出
  退出
  SQL >立即关闭;
  数据库关闭。
  ora - 00210:无法打开指定的控制文件
  ora - 00202:控制文件:/ u01 / app / backuptest / control01.ctl '
  ora - 27041:无法打开文件
  Linux错误:2:没有这样的文件或目录关闭的时候报的错附加信息:3
  SQL >关闭中止;强制关闭
  ORACLE实例关闭。
  SQL >启动
  ORACLE实例开始。
  系统全局总面积849530880字节
  固定大小1339824字节
  变量大小553651792字节
  数据库缓冲区2406976字节
  重做缓冲区5132288字节
  ora - 00205:错误识别控制文件,检查警报记录更多信息启动的时候报的错SQL >关闭中止;
  ORACLE实例关闭。
  SQL > !
  [oracle@node0 ~]美元cp / u01 / app / backuptest / control02。 ctl / u01 / app / backuptest / control01.ctl从其它地方拷贝美元(oracle@node0 ~)退出
  退出
  SQL >启动
  ORACLE实例开始。
  系统全局总面积849530880字节
  固定大小1339824字节
  变量大小553651792字节
  数据库缓冲区2406976字节
  重做缓冲区5132288字节
  数据库安装。
  数据库打开。
  SQL >
  2,所有控制文件全部丢失
  从以前备份的control.trc中恢复,
  #猫control.trc
  ——以下是当前System-scope重做日志档案相关的——参数,可以包含在数据库初始化文件。
  - - -
  ——LOG_ARCHIVE_DEST = "
  ——LOG_ARCHIVE_DUPLEX_DEST = "
  - - -
  ——LOG_ARCHIVE_FORMAT = % t_ % s_ % r.dbf识别- - -
  ——DB_UNIQUE_NAME = " hnjy "
  - - -
  ——LOG_ARCHIVE_CONFIG = '发送、接收、NODG_CONFIG '
  ——LOG_ARCHIVE_MAX_PROCESSES = 4
  ——STANDBY_FILE_MANAGEMENT =手册
  ——STANDBY_ARCHIVE_DEST = ? / dbs /拱
  ——FAL_CLIENT = "
  ——FAL_SERVER = "
  - - -
  ——LOG_ARCHIVE_DEST_1 = '位置= / u01 / app /归档的——LOG_ARCHIVE_DEST_1 = '强制性NOREOPEN NODELAY”
  ——LOG_ARCHIVE_DEST_1 =“拱NOAFFIRM加快NOVERIFY同步”
  ——LOG_ARCHIVE_DEST_1 = ' NOREGISTER NOALTERNATE NODEPENDENCY”
  ——LOG_ARCHIVE_DEST_1 = ' NOMAX_FAILURE NOQUOTA_SIZE NOQUOTA_USED NODB_UNIQUE_NAME”
  ——LOG_ARCHIVE_DEST_1 = ' VALID_FOR =(PRIMARY_ROLE ONLINE_LOGFILES)'
  ——LOG_ARCHIVE_DEST_STATE_1 =启用
  - - -
  下面是两组SQL语句,每一种都创建一个新的
  ——打开数据库控制文件,并使用它。 第一组打开——与NORESETLOGS数据库选项,应该只有在使用——当前版本的所有可用网络日志。 第二个
  RESETLOGS选项-设置打开数据库,应该使用
  ——如果在线日志是不可用。
  ——适当的语句可以复制从跟踪到
  必要的——一个脚本文件,编辑,当有执行
  ——需要重建控制文件。
  - - -
  ——设置# 1。 NORESETLOGS案例
  - - -
  ——以下命令将创建一个新的控制文件并使用它打开数据库。
  ——数据使用的恢复经理将丢失。
  ——可能需要额外的日志的媒介恢复离线
  ——使用这只有在当前版本的所有在线日志
  ——可用。
  ——安装controlfile创建后,下面的SQL
  ——声明将在适当的数据库
  ——保护模式:
  ——改变数据库设置备用数据库来最大化性能
  启动NOMOUNT
  创建CONTROLFILE重用数据库NORESETLOGS ARCHIVELOG“HNJY”
  MAXLOGFILES 16
  MAXLOGMEMBERS 3
  MAXDATAFILES 100
  MAXINSTANCES 8
  MAXLOGHISTORY 292
  日志文件
  组1(
  ' / u01 / app / backuptest / redo01.log ',' / u01 / app / backuptest / redo1_1.log '
  )大小50 m BLOCKSIZE 512,
  组2 ' / u01 / app / backuptest / redo02。 日志的大小50 m BLOCKSIZE 512,组3 ' / u01 / app / backuptest / redo03。 日志的大小50 m BLOCKSIZE 512——备份日志文件
  数据文件
  ' / u01 / app / backuptest / system01.dbf ',' / u01 / app / backuptest / sysaux01.dbf ',' / u01 / app / backuptest / undotbs01.dbf ',' / u01 / app / backuptest / users01.dbf ',' / u01 / app / backuptest / example01.dbf ',' / u01 / app / backuptest / vincent.dbf ',' / u01 / app / backuptest / untotbs2.dbf ',' / u01 / app / backuptest / system02.dbf ',' / u01 / app / backuptest / rman_10g_cat.dbf ',' / u01 / app / backuptest / app1_01.dbf '
  字符集WE8MSWIN1252
  ;
  ——配置RMAN配置记录1
  变量RECNO数量;
  执行:RECNO:= SYS.DBMS_BACKUP_RESTORE。 SETCONFIG(“CONTROLFILE AUTOBACKUP ','对');——命令重新创建化身表
  ——下面的日志名称必须改变现有的文件名
  ——磁盘。 任何一个日志文件可以用来从每个分支——重新化身记录。
  ——改变数据库登记日志文件' / u01 / app /归档/ 1 _1_8467747.dbf”;——需要复苏如果任何datafiles恢复备份,
  ——或者如果最后关闭是不正常或直接。
  恢复数据库
  ——所有的日志都需要存档和日志开关是必要的。
  改变系统归档日志;
  ——数据库现在可以正常打开。
  改变数据库开放;
  ——命令添加tempfiles临时表空间。
  ——在线tempfiles完整的空间信息。
  ——其他tempfiles可能需要调整。
  修改表空间临时添加TEMPFILE ' / u01 / app / backuptest / temp01.dbf '
  大小20971520重用AUTOEXTEND未来655360最大容量32767米;——tempfile年底增加。
  - - -
  ——# 2。 RESETLOGS案例
  - - -
  ——以下命令将创建一个新的控制文件并使用它打开数据库。
  ——数据使用的恢复经理将丢失。
  ——在线日志的内容将丢失,所有备份
  ——作废。 使用这个只有在线日志损坏。
  ——安装controlfile创建后,下面的SQL
  ——声明将在适当的数据库
  ——保护模式:
  ——改变数据库设置备用数据库来最大化性能
  启动NOMOUNT
  创建CONTROLFILE重用数据库RESETLOGS ARCHIVELOG“HNJY”
  MAXLOGFILES 16
  MAXLOGMEMBERS 3
  MAXDATAFILES 100
  MAXINSTANCES 8
  MAXLOGHISTORY 292
  日志文件
  组1(
  ' / u01 / app / backuptest / redo01.log ',' / u01 / app / backuptest / redo1_1.log '
  )大小50 m BLOCKSIZE 512,
  组2 ' / u01 / app / backuptest / redo02。 日志的大小50 m BLOCKSIZE 512,组3 ' / u01 / app / backuptest / redo03。 日志的大小50 m BLOCKSIZE 512——备份日志文件
  数据文件
  ' / u01 / app / backuptest / system01.dbf ',' / u01 / app / backuptest / sysaux01.dbf ',' / u01 / app / backuptest / undotbs01.dbf ',' / u01 / app / backuptest / users01.dbf ',' / u01 / app / backuptest / example01.dbf ',' / u01 / app / backuptest / vincent.dbf ',' / u01 / app / backuptest / untotbs2.dbf ',' / u01 / app / backuptest / system02.dbf ',' / u01 / app / backuptest / rman_10g_cat.dbf ',' / u01 / app / backuptest / app1_01.dbf '
  字符集WE8MSWIN1252
  ;
  ——配置RMAN配置记录1
  变量RECNO数量;
  执行:RECNO:= SYS.DBMS_BACKUP_RESTORE。 SETCONFIG(“CONTROLFILE AUTOBACKUP ','对');——命令重新创建化身表
  ——下面的日志名称必须改变现有的文件名
  ——磁盘。 任何一个日志文件可以用来从每个分支——重新化身记录。
  ——改变数据库登记日志文件' / u01 / app /归档/ 1 _1_8467747.dbf”;——需要复苏如果任何datafiles恢复备份,
  ——或者如果最后关闭是不正常或直接。
  使用备份恢复数据库CONTROLFILE
  ——数据库现在可以打开归零法在线日志。
  改变数据库开放RESETLOGS;
  ——命令添加tempfiles临时表空间。
  ——在线tempfiles完整的空间信息。
  ——其他tempfiles可能需要调整。
  修改表空间临时添加TEMPFILE ' / u01 / app / backuptest / temp01.dbf '
  大小20971520重用AUTOEXTEND未来655360最大容量32767米;——tempfile年底增加。
  - - -
  开始恢复
  [oracle@node0 backuptest]美元rm射频control0 *模拟破坏所有控制文件[oracle@node0 backuptest]sysdba sqlplus美元/SQL * +:释放11.2.0.1.0生产于2014年5月13日10:17:14星期二版权(c)1982年,2009年,甲骨文。 保留所有权利。
  连接到一个空闲实例。
  SQL >显示参数instance_name;
  ora - 01034:甲骨文
  进程ID:0
  会话ID:0序列号:0
  SQL >启动;
  ORACLE实例开始。
  系统全局总面积849530880字节
  固定大小1339824字节
  变量大小553651792字节
  数据库缓冲区2406976字节
  重做缓冲区5132288字节
  ora - 00205:错误识别控制文件,检查警报记录更多信息SQL >关闭中止;
  ORACLE实例关闭。
  SQL >启动NOMOUNT数据库启动于nomount状态
  ORACLE实例开始。
  系统全局总面积849530880字节
  固定大小1339824字节
  变量大小553651792字节
  数据库缓冲区2406976字节
  重做缓冲区5132288字节
  SQL >创建CONTROLFILE重用数据库NORESETLOGS ARCHIVELOG“HNJY”开始执行命令2 MAXLOGFILES 16
  3 MAXLOGMEMBERS 3
  4 MAXDATAFILES 100
  5 MAXINSTANCES 8
  6 MAXLOGHISTORY 292
  7日志文件
  8组1(
  9 ' / u01 / app / backuptest / redo01.log ',10 / u01 / app / backuptest / redo1_1.log”
  11)大小50 m BLOCKSIZE 512,
  12组2 / u01 / app / backuptest / redo02。 日志的大小50 m BLOCKSIZE 512,13组3 ' / u01 / app / backuptest / redo03。 日志的大小50 m BLOCKSIZE 51214个数据文件
  15 ' / u01 / app / backuptest / system01.dbf ',16 ' / u01 / app / backuptest / sysaux01.dbf ',17 ' / u01 / app / backuptest / undotbs01.dbf ',18 ' / u01 / app / backuptest / users01.dbf ',19 ' / u01 / app / backuptest / example01.dbf ',20 ' / u01 / app / backuptest / vincent.dbf ',21 ' / u01 / app / backuptest / untotbs2.dbf ',22 ' / u01 / app / backuptest / system02.dbf ',23 ' / u01 / app / backuptest / rman_10g_cat.dbf ',24 ' / u01 / app / backuptest / app1_01.dbf '
  25个字符集WE8MSWIN1252
  26日;
  创建控制文件。
  SQL >变量RECNO数量;
  SQL >执行:RECNO:= SYS.DBMS_BACKUP_RESTORE。 SETCONFIG(“CONTROLFILE AUTOBACKUP ','对');PL / SQL过程成功完成。
  SQL >恢复数据库
  ora - 00283:由于错误恢复会议取消了
  ora - 002:不需要恢复
  SQL >改变系统归档日志;
  系统的改变。
  SQL >改变数据库开放;数据库正常启动,控制文件恢复正常。
  数据库修改。
  SQL >修改表空间临时添加TEMPFILE ' / u01 / app / backuptest / temp01.dbf '
  2尺寸20971520重用AUTOEXTEND未来655360最大容量32767米;表空间改变。
  SQL >
  3、控制文件备份后数据库结构发生变化后的恢复首先备份控制文件
  sysdba sqlplus美元/
  SQL * +:释放11.2.0.1.0生产于2014年5月13日16:45:00星期二版权(c)1982年,2009年,甲骨文。 保留所有权利。
  连接到:
  Oracle数据库11 g企业版发布11.2.0.1.0——生产与分区、OLAP、数据挖掘和真实的应用程序中测试选项SQL >改变数据库备份controlfile ' / u01 / app / backuptest / control.trc ';数据库修改。
  app3 SQL >创建表空间数据文件' / u01 / app / oracle / oradata / hnjy / app3_01。 dbf的大小10米;创建新的表空间,数据库结构则发生变化。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com