您好,欢迎来到九壹网。
搜索
您的当前位置:首页RMAN的备份与恢复步骤详解

RMAN的备份与恢复步骤详解

来源:九壹网


在这里没有讨论多么深入的RMAN技术,也没有告诉大家这样去编写备份脚本,这并不是我的初衷,我只想把我会的写出来,和大家一起学习,一起进步,谢谢。

1、切换服务器归档模式,如果已经是归档模式可跳过此步:

%sqlplus /nolog (启动sqlplus)

SQL> conn / as sysdba (以DBA身份连接数据库)

SQL> shutdown immediate; (立即关闭数据库)

SQL> startup mount (启动实例并加载数据库,但不打开)

SQL> alter database archivelog; (更改数据库为归档模式)

SQL> alter database open; (打开数据库)

SQL> alter system archive log start; (启用自动归档)

SQL> exit (退出)

2、连接: %rman target=rman/rman@mydb (启动恢复管理器)

3、基本设置: RMAN> configure default device type to disk; (设置默认的备份设备为磁盘)

RMAN> configure device type disk parallelism 2; (设置备份的并行级别,通道数)

RMAN> configure channel 1 device type disk fromat '/backup1/backup_%U'; (设置备份的文件格式,只适用于磁盘设备)

RMAN> configure channel 2 device type disk fromat '/backup2/backup_%U'; (设置备份的文件格式,只适用于磁盘设备)

RMAN> configure controlfile autobackup on; (打开控制文件与服务器参数文件的自动备份)

RMAN> configure controlfile autobackup format for device type disk to '/backup1/ctl_%F'; (设置控制文件与服务器参数文件自动备份的文件格式)

4、查看所有设置:

RMAN> show all

5、查看数据库方案报表:

RMAN> report schema;

6、备份全库:

RMAN> backup database plus archivelog delete input; (备份全库及控制文件、服务器参数文件与所有归档的重做日志,并删除旧的归档日志)

7、备份表空间:

RMAN> backup tablespace system plus archivelog delete input; (备份指定表空间及归档的重做日志,并删除旧的归档日志)

8、备份归档日志:

RMAN> backup archivelog all delete input;

9、复制数据文件:

RMAN> copy datafile 1 to '/oracle/dbs/system.copy';

10、查看备份和文件复本:

RMAN> list backup;

11、验证备份:

RMAN> validate backupset 3;

12、从自动备份中恢复服务器参数文件:

RMAN> shutdown immediate; (立即关闭数据库)

RMAN> startup nomount; (启动实例)

RMAN> restore spfile to pfile '/backup1/mydb.ora' from autobackup; (从自动备份中恢复服务器参数文件)

13、从自动备份中恢复控制文件:

RMAN> shutdown immediate; (立即关闭数据库)

RMAN> startup nomount; (启动实例)

RMAN> restore controlfile to '/backup1' from autobackup; (从自动备份中恢复控制文件)

13、恢复和复原全数据库:

RMAN> shutdown immediate; (立即关闭数据库)

RMAN> exit (退出)

%mv /oracle/dbs/tbs_12.f /oracle/dbs/tbs_12.bak (将数据文件重命名)

%mv /oracle/dbs/tbs_13.f /oracle/dbs/tbs_13.bak (将数据文件重命名)

%mv /oracle/dbs/tbs_14.f /oracle/dbs/tbs_14.bak (将数据文件重命名)

%mv /oracle/dbs/tbs_15.f /oracle/dbs/tbs_15.bak (将数据文件重命名)

%rman target=rman/rman@mydb (启动恢复管理器)

RMAN> startup pfile=/oracle/admin/mydb/pfile/initmydb.ora (指定初始化参数文件启动数据库)

RMAN> restore database; (还原数据库) RMAN> recover database; (恢复数据库)

RMAN> alter database open; (打开数据库)

14、恢复和复原表空间:

RMAN> sql 'alter tablespace users offline immediate'; (将表空间脱机)

RMAN> exit (退出恢复管理器)

%mv /oracle/dbs/users01.dbf /oracle/dbs/users01.bak (将表空间重命名)

%rman target=rman/rman@mydb (启动恢复管理器)

RMAN> restore tablespace users; (还原表空间)

RMAN> recover tablespace users; (恢复表空间)

RMAN> sql 'alter tablespace users online'; (将表空间联机)

15、增量备份与恢复:

第一天的增量基本备份:

RMAN> backup incremental level=0 database plus archivelog delete input;

第二天的增量差异备份:

RMAN> backup incremental level=2 database plus archivelog delete input;

第三天的增量差异备份:

RMAN> backup incremental level=2 database plus archivelog delete input;

第四天的增量差异备份:

RMAN> backup incremental level=1 database plus archivelog delete input;

第五天的增量差异备份:

RMAN> backup incremental level=2 database plus archivelog delete input;

第六天的增量差异备份:

RMAN> backup incremental level=2 database plus archivelog delete input;

第七天的增量差异备份:

RMAN> backup incremental level=0 database plus archivelog delete input;

增量恢复:

RMAN> shutdown immediate;

RMAN> exit

%mv /oracle/dbs/tbs_12.f /oracle/dbs/tbs_12.bak

%mv /oracle/dbs/tbs_13.f /oracle/dbs/tbs_13.bak

%mv /oracle/dbs/tbs_14.f /oracle/dbs/tbs_14.bak

%mv /oracle/dbs/tbs_15.f /oracle/dbs/tbs_15.bak

%rman target=rman/rman@mydb

RMAN> startup pfile=/oracle/admin/mydb/pfile/initmydb.ora

RMAN> restore database;

RMAN> recover database;

RMAN> alter database open。

(e129)on.htm simulator/doc/license_keys.htm simulator/doc/sdk.style.css simulator/doc/davehitzforeword.htm simulator/doc/troubleshooting.htm simulator/readme.htm

simulator/doc/faq.htm simulator/license.htm simulator/setup.sh

simulator/runsim.sh

simulator/sim.tgz -- 在正式备份之前,一定按如下要求去做。 -- 版权声明如下: -- 读者可以任意拷贝、修改该备份脚本的内容,但不可以篡改作者。 -- 作者: 徐玉金

各文件的作用:

1.rman_db_all.sh :

备份整个oracle数据库,该文件会先后调用rman_db.sh,scp_rman_db_files.sh文件

2.rman_db.sh:

由rman_db_all.sh文件调用,实现用rman备份数据库. 该脚本会首先根据环境变量的设置: a.生成一个rman脚本文件(rman_arch_cr_g.sh), 去检查归档日志的情况 b.生成一个rman脚本文件(rman_db_backup_g.sh), 备份整个数据库

3.scp_rman_db_files.sh: 由rman_db_all.sh文件调用,将用rman备份出的数据文件拷贝到另外一个机器上,用scp拷贝

4.OS_bak_arch.sh: 用操作系统拷贝方法只备份归档日志文件,该文件会先后调

用OS_bak_arch.sh, scp_rman_arch_files.sh文件

5.OS_bak_arch.sh: 由OS_bak_arch.sh文件调用,实现将新产生的归档日志拷贝到指定的目录.

6.scp_rman_arch_files.sh 由OS_bak_arch.sh文件调用,将第5步的指定目录的归档日志用scp拷贝到另外一台机器上。

具体设置方法:

1.设置服务器,使之用ssh与scp密码登录时不用密码

2.在备份服务器上创建相应的备份目录, 为 BACKUP_SERVER_TARGET, BACKUP_SERVER_SCRIPT_TARGET 环境变量指定的值

3.在数据库服务器上创建相应的目录, 为 BACKUP_BASE, SCRIPT_FILE_TARGET 环境变量指定的值

3.修改所有文件中的相应环境变量的值,所有文件的环境变量都一样

4.运行前将rman_db_all.sh,rman_arch_all.sh文件前面有中文的行去掉

5.根据归档目录个数的不同,适当的修改脚本

6.将所有脚本拷贝到备份服务器的BACKUP_SERVER_SCRIPT_TARGET目录下,并使所有的脚本由可执行权限

10.将rman_db_all.sh文件加到cron中,每天运行一次。rman_arch_all.sh也加到cron中,每30分钟运行一次

11.根据需要修改,LOG_CHECKPOINT_TIMEOUT,使之在指定的时间内归档, 这样可以保证在整个系统硬盘都崩溃的情况的,只损失指定时间的记录

备注:

1.在oracle9i下测试通过

2.每个scrip中都设置enviroment variable的原因是:用ssh时,环境变量传不过去。

Oracle 恢复管理( RMAN )有很多可以用来帮助备份和恢复进程的功能,

该工具具有命令行和 GUI 两种版本。通常, RMAN 执行并标准化备份和恢复进程,并且通过其操作,减少 DBA 在此过程中犯的错误。

RMAN 的主要功能如下所示:

备份数据库、表空间、数据文件、控制文件和归档日志

RMAN 工具能以很多种方法备份 Oracle 数据库,给备份和恢复方法提供了很大的灵活性。

通过确定哪些块已经修改,并且仅备份修改过的块来压缩备份

RMAN 提高备份性能的方法之一就是压缩备份。

RMAN 能识别出哪些块被修改过,并且只备份这些修改过的块,不备份空块。

执行增量备份

RMAN 具有执行增量备份和完全备份的能力。

增量备份仅备份从上次备份后修改了的内容,此方法允许你一周只有一天执行完全备份,而其它几天都执行增量备份,这样就提高了备份的性能。

提供多项任务合并执行的脚本功能

RMAN 提高你备份、还原和恢复操作的方法之一就是允许 RMAN 命令脚本化。

该脚本可能饮食多个存储在恢复目录内的 RMAN 命令。

可以重复调用、执行这些脚本来完成任务。

日志备份操作

随着时间发展, RMAN 具有记录所有备份状态的能力。该信息存储在日志和跟踪文件中。

可第三方磁带介质软件集成

RMAN 工具有到很多第三方磁带介质软件的 API ,这就允许 RMAN 在其它非 Oracle 的备份工具中运行,也可以被某机构集成到通用备份策略中。

提供目录信息报表和列表

可以使用 RMAN LIST 和 REPORT 命令查询存储在必得目录中有关备份的信息,这些命令提供显示信息的有效方法。

在 Oracle 数据库的目录中存储有关备份的信息 有关备份的信息存储在恢复目录中。日后任何时候都可以还原该信息。

提供性能好处,如并行处理备份和还原操作

备份和还原操作可以并行处理。它支持将工作负载分配到不同的磁带头和磁盘设备上,

这样可以提高性能。 出于测试或开发目的创建数据库副本

可以从 RMAN 备份创建数据库副本,并可用于测试目的。

测试备份是否能成功还原

RMAN 提供的 VALID 命令可以检查备份是否有效的。

检测介质库中的备份是否依然可用

RMAN 提供的 CROSSCHECK 命令可以检测备份介质和目录信息是否匹配。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 91gzw.com 版权所有 湘ICP备2023023988号-2

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务