`
gip666
  • 浏览: 39187 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

oracle 备份

 
阅读更多
1. 热备份

热备份是在数据库运行的情况下,采用archivelog mode 方式备份数据库的方法,冷备份虽然操作简便,但因为备份需要关闭数据库,如果系统是一个7X24小时的运行的数据库,冷备份是不现实的。

1.1 优缺点
优点:1、可在表空间或数据库文件级备份、备份时间短
        2、可达到秒级恢复(恢复到某一时间点上)
        3、可对几乎所有数据库实体做恢复
        4、恢复是快速的,在大多数情况下在数据库仍工作时恢复
        5、备份的数据库仍可用
缺点:1、难以维护,所以要特别仔细小心,不允许以失败而告终。
        2、若备份不成功,所得结果不可用于时间点的恢复
        3、不能出错,否则后果严重。

1.2 备份
1、表空间热备
查看是否为归档模式(SYS登陆)
ARCHIVE LOG LIST;

         若为非归档模式,设置数据库日志为存档模式
         SHUTDOWN IMMEDIATE;
         STARTUP MOUNT;
         ALTER DATABASE ARCHIVELOG;
         ALTER DATABASE OPEN;

       将数据库设置备份模式,用户管理的联机热备份必需的操作,不然copy备份的数据文件不能用来恢复,即使用某些放时恢复了也会丢数据
        ALTER TABLESPACE RUIYUAN_SPACE BEGIN BACKUP;
    
        拷贝数据文件至备份文件中
        HOST COPY D:\oracle\oradata\orcl\*.dbf D:\BACK\

        ORACLE数据库热备份结束备份状态
        ALTER TABLESPACE RUIYUAN_SPACE END BACKUP;

切换日志,使当前日志归档
ALTER SYSTEM SWITCH LOGFILE;

2、控制文件

3、归档日志
       归档当前的联机重做日志
       Alter system archive log current;

   查看现有归档日志文件,使用操作系统复制的命令进行备份
   select name,sequence#,first_change# from v$archived_log;
1.3 恢复
如误删ruiyuan_space表空间出现问题,数据库不能正常开启,将ruiyuan表空间设置为offline
ALTER DATABASE DATAFILE 4 OFFLINE DROP;

Offline后打开数据库
ALTER DATABASE OPEN;

将前面备份的数据copy到系统目录中
HOST COPY D:\BACK\RUIYUAN_D01.DBF D:\app\GP\oradata\orcl\RUIYUAN_D01.DBF;

介质恢复
RECOVER DATAFILE 5;

恢复完成后,将表空间设置为online
ALTER DATABASE DATAFILE 5 ONLINE;

1.4 其他说明
热备份没有必要备份联机日志,但必须是归档状态,在实例恢复的时候,可能用到归档日志。
当前联机日志一定要保护好或是处于镜像状态,当前联机日志的损坏,对于数据库的损坏是巨大的,只能以数据的丢失来进行数据库的恢复工作。临时表空间不需要进行备份,若临时文件发生故障,可以删除临时文件与表空间,重新创建一个临时表空间。
    注意热备份的时候,用户可能还在操作数据库,最好是每个表空间处于备份状态的时间最短,这样就要求一个表空一个表空间的备份,不要一起使表空间处于备份状态同时拷贝数据文件。如果在热备份的时候数据库中断(如断电),那么再重启数据库的时候,数据库将提示有数据文件需要恢复,需要把正在断电时处于备份状态的数据文件通过end backup结束备份方式,具体查看、哪个数据文件或表空间处于备份状态,可以通过v$backup与v$datafile来获得。

2. 冷备份

冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提供给我们一个完整的数据库。冷备份时将关键性文件拷贝到另外的位置。对于备份Oracle信息而言,冷备份时最快和最安全的方法。

2.1 优缺点
优点:
1、 是非常快速的备份方法(只需拷文件)
2、 容易归档(简单拷贝即可)
3、 容易恢复到某个时间点上(只需将文件再拷贝回去)
4、 能与归档方法相结合,做数据库“最佳状态”的恢复。
5、 低度维护,高度安全。

不足:
1、 单独使用时,只能提供到“某一时间点上”的恢复。
2、 再实施备份的全过程中,数据库必须要作备份而不能作其他工作。也就是说,在冷备份过程中,数据库必须是关闭状态。
3、 若磁盘空间有限,只能拷贝到磁带等其他外部存储设备上,速度会很慢。
4、 不能按表或按用户恢复。

2.2 备份步骤
通过SQL语句查看相应文件位置,备份到另一个目录。

正常关闭要备份的实例。

控制文件
select *from v$controlfile;

参数文件
    select value from V$PARAMETER where name like '%spfile%'

    密码文件
    D:\Oracle11g\product\11.2.0\dbhome_1\database\PWDorcl.ora

    数据文件
    select name from v$datafile;

    联机重做日志
    select member from V$LOGFILE;

2.3 恢复
如果数据库是运行在非归档日志模式下,将备份文件拷贝回原来的目录即可。非归档日志模式下数据库只能恢复到备份时刻的状态。
  如果数据库是运行在归档日志模式下,将数据文件拷回原来的目录(不包括联机redolog文件),然后依次选择相应的重做日志文件进行恢复,即可恢复冷备份后的所有操作,即是说可以恢复到系统崩溃前的状态。

3. EXP/IMP
使用exp/imp为逻辑备份方式,利用Export可将数据从数据库中提取出来,利用Import则可将提取出来的数据送回到Oracle数据库中去。有三种模式:表备份、用户备份和完全备份。
3.1 优缺点
优点:1、备份简单。
2、 不需要外部存储设备。

不足:1、对于大型数据库不适用,导出导入慢。

3.2 导出备份
表模式
exp ruiyuan/ruiyuan rows=y indexes=n compress=n buffer=65536
feedback=100000 file=exp_ruiyuan_ yyyymmdd.dmp
log=exp_ruiyuan_ yyyymmdd.log
tables=ruiyuan.gb_get,ruyuan.gb_weibo

用户模式
exp ruiyuan/ruiyuan owner=ruiyuan rows=y indexes=n compress=n buffer=65536
feedback=100000 file=exp_ruiyuan_yyyymmdd.dmp
log=exp_ruiyuan_yyyymmdd.log

完全模式、
     exp ruiyuan/ruiyuan rows=y indexes=n compress=n buffer=65536
feedback=100000 full=y file=exp_ruiyuan_yyyymmdd.dmp
log=exp_ruiyuan_yyyymmdd.log

3.3 导入恢复
表模式
      imp gb/ruiyuan fromuser=ruiyuan touser=gb rows=y indexes=n
commit=y buffer=65536 feedback=100000 ignore=n volsize=0
file=exp_ruiyuan_yyyymmdd.dmp
log=imp_ruiyuan__yyyymmdd.log
tables=ruiyuan.gb_get
  若要全部导入不需要指定tables

用户模式
imp gb/ruiyuan fromuser=ruiyuan touser=ruiyuan rows=y indexes=n
commit=y buffer=65536 feedback=100000
file=exp_ruiyuan_yyyymmdd.dmp
log=imp_ruiyuan_yyyymmdd.log

完全模式
imp system/sys rows=y indexes=n commit=y buffer=65536
feedback=100000 file=exp_ruiyuan_yyyymmdd.dmp
log=imp_ruiyuan_yyyymmdd.log

3.4 相关参数
Exp

USERID    用户名/口令               FULL                  导出整个文件 (N)
BUFFER   数据缓冲区大小           OWNER                 所有者用户名列表
  FILE       输出文件 (EXPDAT.DMP)  TABLES                      表名称列表
  COMPRESS   导入到一个区 (Y)  RECORDLENGTH IO                记录的长度
  GRANTS   导出权限 (Y)             INCTYPE              增量导出类型(废除)
  INDEXES    导出索引 (Y)           RECORD                 跟踪增量导出 (Y)
  DIRECT     直接路径 (N)            TRIGGERS                 导出触发器 (Y)
  LOG        屏幕输出的日志文件     STATISTICS           分析对象 (ESTIMATE)
  ROWS    导出数据行 (Y)            PARFILE                       参数文件名
  CONSISTENT 交叉表的一致性 (N)   CONSTRAINTS            导出的约束条件 (Y)
  OBJECT_CONSISTENT                   只在对象导出期间设置为读的事务处理 (N)
  FEEDBACK                                              每 x 行的显示进度 (0)
  FILESIZE                                               每个转储文件的最大大小
  FLASHBACK_SCN                          用于将会话快照设置回以前状态的 SCN
  FLASHBACK_TIME                        用于获取最接近指定时间的 SCN 的时间
  QUERY                                           用于导出表的子集的 select 子句
  RESUMABLE                                    遇到与空格相关的错误时挂起 (N)
  RESUMABLE_NAME                             用于标识可恢复语句的文本字符串
  RESUMABLE_TIMEOUT                                 RESUMABLE 的等待时间
  TTS_FULL_CHECK                            对 TTS 执行完整的或部分相关性检查
  TABLESPACES                                              要导出的表空间列表
  TRANSPORT_TABLESPACE                          导出可传输的表空间元数据 (N)
  TEMPLATE                                             调用 iAS 模式导出的模板名


Imp

USERID   用户名/口令                   FULL               导入整个文件 (N)
  BUFFER   数据缓冲区大小             FROMUSER           所有人用户名列表
  FILE      输入文件 (EXPDAT.DMP)      TOUSER                   用户名列表
  SHOW     只列出文件内容 (N)         TABLES                      表名列表
  IGNORE   忽略创建错误 (N)           RECORDLENGTH          IO 记录的长度
  GRANTS   导入权限 (Y)                INCTYPE                 增量导入类型
  INDEXES  导入索引 (Y)                COMMIT               提交数组插入 (N)
  ROWS     导入数据行 (Y)              PARFILE                    参数文件名
  LOG       屏幕输出的日志文件         CONSTRAINTS            导入限制 (Y)
  DESTROY                                             覆盖表空间数据文件 (N)
  INDEXFILE                                       将表/索引信息写入指定的文件
  SKIP_UNUSABLE_INDEXES                           跳过不可用索引的维护 (N)
  FEEDBACK                                               每 x 行显示进度 (0)
  TOID_NOVALIDATE                                    跳过指定类型 ID 的验证
  FILESIZE                                               每个转储文件的最大大小
  STATISTICS                                          始终导入预计算的统计信息
  RESUMABLE                                   在遇到有关空间的错误时挂起 (N)
  RESUMABLE_NAME                             用来标识可恢复语句的文本字符串
  RESUMABLE_TIMEOUT                                RESUMABLE 的等待时间
  COMPILE                                           编译过程, 程序包和函数 (Y)
  STREAMS_CONFIGURATION                       导入 Streams 的一般元数据 (Y)
  STREAMS_INSTANITATION                       导入 Streams 的实例化元数据 (N)
  
    下列关键字仅用于可传输的表空间
  TRANSPORT_TABLESPACE 导入可传输的表空间元数据 (N)
  TABLESPACES 将要传输到数据库的表空间
  DATAFILES 将要传输到数据库的数据文件
  TTS_OWNERS 拥有可传输表空间集中数据的用户
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

Global site tag (gtag.js) - Google Analytics