简单介绍用RMAN进行Oracle自动备份

来源:互联网 作者: 2006-11-24 出处:pcdog.com

  • oracle数据库
  • 备份数据库
  • 操作系统
  • ssh
  • 硬盘
  •    

    -- 在正式备份之前,一定按如下要求去做。

    各文件的作用

    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时,环境变量传不过去。


    更多内容请看PCdog.com--MySQL数据备份数据库备份与恢复备份恢复专题
    上一篇:Oracle中使用SQL MODEL定义行间计算 (1)
    下一篇:Oracle数据库联机热备份的原理简介