知识大全 实现Oracle数据库的每天的自动备份

Posted 文件

篇首语:韬略终须建新国,奋发还得读良书本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 实现Oracle数据库的每天的自动备份相关的知识,希望对你有一定的参考价值。

实现Oracle数据库的每天的自动备份  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  相信为数不少的系统管理员每天都在做着同一样的工作——对数据进行备份 一旦哪一天疏忽了 而这一天系统又恰恰发生了故障 需要进行数据恢复 那么此时就无能为力了 假如每天设定一个固定的时间 系统自动进行备份 那该多好啊!下面笔者结合实践经验 谈一谈UNIX环境下Oracle数据库的自动备份 以起到抛砖引玉的作用     我们计划让数据库在晚上 点做export导出备份 在凌晨 点将备份文件拷贝到磁带上 在凌晨 点将备份文件拷贝到另一台UNIX机器上 为此我们可进行如下操作      一 导出数据库  export命令将数据库中的数据备份成一个二进制文件 它通常有三种模式 用户模式 表模式和整个数据库模式 本文拟采用用户模式 备份之前 应先建立一个备份目录 以容纳备份文件 比如可建一个/backup目录 接着我们可在UNIX的Oracle目录下(也可以是其它目录)分别建立两个文件ora—backup tar—backup 需要说明的是 前一个文件需要对Oracle的参数进行初始化 为了方便起见 我们不妨将初始化命令放到一个文件中(文件名姑且定为ora—env) 再由第一个文件调用它      ora—env文件对Oracle的参数进行初始化 其内容如下     ORACLE—HOME=$ORACLE—HOME;export ORACLE—HOME    ORACLE—SID=ora ;export ORACLE—SID    ORACLE—TERM=sun;export ORACLE—TERM    LD—LIBRARY—PATH=$ORACLE—HOME/lib;export LD—LIBRARY—PATH    ORA—NLS =$ORACLE—HOME/omon/nls/admin/data;export ORA—NLS    PATH= :/usr/ccs/bin:/usr/ucb:$ORACLE—HOME/bin:$PATH;export PATH    DISPLAY=host : ;export DISPLAY    NLS—LANG=american—america zhs cgb ;export NLS—LANG     ora—backup文件对数据库做export导出 导出的文件名可以任意定 本文定为字母 xx 加当天日期 即假如当天日期是 月 号 则导出的文件名为 xx dmp 以区别于其它日期的备份文件     ora—backup文件内容      /oracle/ora—env    #初始化Oracle数据库    rq=′date +″%m%d″ ′    #把当天日期赋予变量rq    rm /backup/    # 清空 /backup目录    exp test/test file=/backup/xx$rq dmp log=/backup/xx$rq log    本命令用于在$提示符下 导出test用户的数据(其口令亦为test) 导出文件及日志均放在/backup目录下      二 磁带备份  tar—backup文件将用export命令导出的数据文件拷贝到磁带上     tar—backup文件内容     tar rvf /dev/rmt/ n/backup/    本命令可将/backup目录下当天产生的文件备份到磁带上 本文件中 tar命令使用了三个参数 其中r选项表示向磁带上拷入文件而不破坏磁带原来内容 v选项表示在拷贝过程中显示文件信息 f选项后面加上磁带设备名 指定文件向何处拷贝 n选项表示磁带机不倒带 /dev/rmt/ 表示UNIX主机第一个磁带驱动器 同理 /dev/rmt/ 则表示UNIX主机第二个磁带驱动器 依此类推     ora—env ora—backup tar—backup文件编写完成后 分别使用下述命令     chmod ora—env    chmod ora—backup    chmod tar—backup    这样 三个文件就都变成了可执行文件      三 异地备份  我们知道 通常可用FTP命令在两台主机间传输数据 但一般是通过交互方式实现的 即需要手工输入目标主机的IP地址 用户名 口令等 显然 这不符合自动备份的要求 所幸的是 我们可以通过编写一rc的文件来达到目标 这一文件必须命名rc 且必须存放在启动FTP命令的机器上的用户注册目录中 该文件的权限应禁止组内或其它用户进行读访问 这样 当用户使用FTP命令的时候 系统将会在该用户的注册目录中寻rc文件 如果能够寻找到 将会首先执行该文件 否则 会交互式地提示用户输入用户名 口令等     在使用FTP命令之前 应先在另一台作备份用的UNIX机器上建一目录 以容纳备份文件 本文建的目录是/pub 需要指出的是 为了加快备份速度 两台主机之间的传输速率应尽可能的高 最好位于同一局域网上    rc文件内容如下     machine host     # host 为作备份用的主机名    login oracle    #oracle为备份主机上的一个用户    password oracle    #oracle用户的口令为oracle    macdef init    #定义一个名为init的宏 它将在自动注册进程的最后被执行    bin    #文件的传输方式设为二进制    lcd /backup    # 进入本地工作目录/backup    cd /pub    # 进入备份主机目录/pub    mput     # 将/backup目录下的所有文件传输至备份主机    bye    #退出FTP会话进程   rc文件编写完成后 使用下述命令     chmod rc    这样rc文件就只能被该用户所访问      四 启动备份进程  Cron是一个永久进程 它由/etc/rc local启动执行 Cron检查/var/spool/cron/crontabs/目录中的文件 找到所要执行的任务和执行任务的时间     Crontab文件的每一行由六个域(minutes hours day of month month day of week mand)组成 域之间用空格或Tab分开 其中     minutes 分钟域 值的范围是 到     hours 小时域 值的范围是 到     day of month 日期 值的范围是 到     month 月份 值的范围是 到     day of week 星期 值的范围是 到 星期日值为     mand 所要运行的命令    如果一个域是 表明命令可以在该域所有可能的取值范围内执行     如果一个域是由连字符隔开的两个数字 表明命令可以在两个数字之间的范围内执行(包括两个数字本身)     如果一个域是由逗号隔开的一系列值组成的 表明命令可以在这些值组成的范围内执行     如果日期域和星期域都有值 则这两个域都有效     现在 我们编写一个文件 用以启动自动备份进程 值得注意的是 该文件只能在Oracle用户名下用crontab -e 命令来编辑 否则将不会被定时执行 文件名定为Oracle 文件将放在/var/spool/cron/crontabs 目录下 编辑完成后 可以在Oracle的$提示符下 用crontab -l命令来查看     Oracle文件内容         /oracle/ora—backup    # 每天 点对数据库执行备份        /oracle/tar—backup    # 每天 点将文件备份到磁带上        ftp -i host     # 每天 点将文件备份到另一台主机上    经过以上的操作后 系统每天晚上将自动产生一个备份 并且自动将备份文件分别拷贝到磁带上和另一台主机上 系统管理员需要做的是 隔几天换一盘磁带(更换磁带的周期取决于备份文件的大小和磁带的容量)和清理备份目录 这样 他们就可以从备份数据的繁琐中解脱出来 去做其它更有意义的工作 而数据库既实现了磁带备份 又实现了异地备份 相应的安全性也大大提高了 cha138/Article/program/Oracle/201311/18204

相关参考

知识大全 Oracle自动异地远程数据备份研究

Oracle自动异地远程数据备份研究  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  当前随着行业

知识大全 关于oracle的备份策略

  控制文件在备份中意义重大建议每次对其单独备份如果数据库版本允许的话应该设置为控制文件自动备份同时应该尽可能地增大CONTROL_FILE_RECORD_KEEP_TIME这个初始化参数的值以便备份

知识大全 Oracle生产环境下的备份方案

Oracle生产环境下的备份方案  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  设置数据库自动备

知识大全 WIN2000下ORACLE计划任务自动备份方法

WIN2000下ORACLE计划任务自动备份方法  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 oracle数据库备份与恢复apieceofcake(4)

  oracle数据库日志备份(windows平台)  本片是接上次的数据库在线备份进行数据库全备份后需要备份归档的日志文件  建立数据库备份的脚本  在上面建立的目录下建立如下的两个脚本  建立执行

知识大全 Oracle数据库设置任务计划备份一周的备份记录

Oracle数据库设置任务计划备份一周的备份记录  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 ORACLE 数据库的逻辑备份

ORACLE数据库的逻辑备份  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  ORACLE数据库有

知识大全 Oracle数据库备份与恢复

Oracle数据库备份与恢复  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  一导出/导入(Exp

知识大全 有关Oracle数据库的备份情况

有关Oracle数据库的备份情况  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  一意义当我们使用

知识大全 Oracle数据库的备份与恢复

Oracle数据库的备份与恢复  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  河南省新乡市电信局