Oracle数据库被广泛应用于大型企业和机构中,成为了非常受欢迎的数据库。但是,数据库运维人员面对大量的备份任务和日常维护却让人感到头疼。因此,自动化备份工具的使用变得尤为重要。本文将介绍如何使用Oracle Recovery Manager (RMAN)工具在Linux上自动备份Oracle数据库。
创新互联公司是一家专业提供永嘉企业网站建设,专注与成都网站建设、网站建设、HTML5、小程序制作等业务。10年已为永嘉众多企业、政府机构等服务。创新互联专业网站建设公司优惠进行中。
1. 确定备份策略
在制定备份策略时,需要考虑以下几个方面:
– 数据库的重要程度:重要程度越高,备份的频次也就越高。
– 备份恢复时间:如果恢复时间紧要,则需要在备份频率上进行调整。
– 备份容量:如果数据量较大,备份容量也就越大。
– 磁盘空间:备份数据需要占用磁盘空间。需要考虑磁盘空间的使用情况,防止磁盘空间不足的情况发生。
– 数据库性能:备份操作可能会对数据库的性能产生影响,需要尽量减小备份的时间和对数据库的影响。
2. RMAN安装和配置
– 在Linux服务器上安装Oracle数据库,并将环境变量设置正确。
– 根据需要配置Oracle数据库(例如配置监听器,创建数据库等)。
– 在Linux服务器上安装RMAN工具。
3. RMAN备份命令
接下来,在命令行输入以下命令,进入RMAN备份命令窗口。
$ rman target /
进入后,可以看到系统正在等待命令。可以输入help命令查看所有可能的RMAN命令,或者输入show all命令查看当前系统的配置。
4. RMAN自动备份脚本
有了备份策略和RMAN备份基础知识后,我们可以开始构建脚本来自动化执行备份。
以下是oracle_rman_backup.sh的脚本示例:
#!/bin/sh
export ORACLE_HOME=/u01/app/oracle/product/11.2.0.4/db_1
export ORACLE_SID=orcl
export NLS_DATE_FORMAT=’DD-MON-YYYY HH24:MI:SS’
export PATH=$PATH:$ORACLE_HOME/bin
rman target /
BACKUP DATABASE PLUS ARCHIVELOG;
EOF
在脚本中,ORACLE_HOME和ORACLE_SID变量需要指向正确的目录和数据库实例名称。NLS_DATE_FORMAT是用于在备份文件名中添加日期和时间戳的格式。PATH需要包括Oracle可执行文件的目录。
在rman命令块中,BACKUP DATABASE PLUS ARCHIVELOG将数据库和所有归档日志备份到默认备份目录。
5. 执行自动备份
为了使脚本能够定期执行,我们可以使用crontab工具将其添加到自动化备份任务中,并在指定的时间和日期执行。
使用以下命令检查当前所有的定时任务:
$ crontab -l
使用以下命令以编辑crontab:
$ crontab -e
在打开的编辑窗口中,输入以下内容表示在每天的午夜三点执行备份。
0 3 * * * /u01/app/oracle/admin/scripts/oracle_rman_backup.sh
保存并退出编辑器,现在脚本将在每天的午夜三点执行备份。
结论
本文介绍了在Linux平台上使用RMAN实现自动化备份的配置方法。备份是数据库运维最重要的任务之一,能够确保数据的可靠性和安全性。自动化备份工具使得任务的执行变得更加容易且效率更高。通过合理的制定备份策略,结合RMAN自动备份脚本,可以保证数据库的可靠性与恢复性,提高数据库运维效率。
成都网站建设公司-创新互联,建站经验丰富以策略为先导10多年以来专注数字化网站建设,提供企业网站建设,高端网站设计,响应式网站制作,设计师量身打造品牌风格,热线:028-86922220rman 备份知识:
一、在启用rman 备份时,要启用 archive log 模式。
查看是否处在 archive log 模式
SQL〉archive log list
修 改到 archive log 模式:
SQL〉startup mount
//修改archivelog 的文件格式
SQL>alter system set log_archive_format=’%t_%s_%r.dbf’ scope=both;
//修改archivelog 的存放路径,下面为归档路径在A中diskgroup中
SQL>alter system set log_archive_dest=’+DGDATA/jw/arch/’ scope=both;
SQL〉alter database archivelog;
SQL〉archive log list;
SQL〉alter system archive log current; //马上进行归档
SQL〉alter database open;
SQL〉archive log list;
Database log modeArchive Mode
Automatic archivalEnabled
Archive destination+DGDATA/jw/arch/
Oldest online log sequence
Next log sequence to archive 139
Current log sequence
二、登陆rman
#su – oracle
$rman nocatalog 直接进入rman,以非 catalog 方式进行备份橘判
rman〉 connect target / 连接到 target database
rman〉backup database; 对数据库进行厅伍缺全备
rman〉list backupset; 查看备份的情况
默认备份存放的目 录:@ORACLE_BASE/flash_recovery_area/数据库 名/backupset/时间/
这个参数来之于
rman〉 show all; 查看备份参数
三、catalog 和nocatalog 的区别
rman 的nocatalog 方式下的备份信息放在 control file 里面
由于 control file 是一个二进制的文件,在linux 地下用 strings 命令查看 control file 里面的信息。
#string control03.ctl 就可以看到有备份的信息出现了。
rman 的 catalog 方式时,备份信息放在 catalog database里面。
四、增量备份
增量备 份 (0级增量备份也是全备,但可以做为后级增量备份的基础,full 备不能)
rman〉backup incremental level=0 database;
增量备份(1级增量备份)
rman〉backup incremental level=1 database;
备份 出来的文件小很多。
rman〉backupset list;
五、rman备份文件与信息一致性处理
利用 rman 对以前的 archivelog 进行处理提前备走,再修改切换到新的archivelog 的新目录。如果直扮辩接切换到新的归档,而之前的archivelog 没有用rman备走,那么应该采用以下操作:
#rman target /
rman> crosscheck archivelog all; //一般在 archive log 备份失败时,需要需要重新检查。
rman> delete expired archivelog all;
在controlfile中记录着每一个archivelog的相关信息,当我们在OS下把这些物理文件 delete掉或异常变动后,在controlfile中仍然记录着这些archivelog的信息,当我们手工清除archive目录下的文件后,这些 记录并没有被我们从controlfile中清除掉,也就是oracle并不知道这些文件已经不存在了!这时候我们要做手工的清除。
rman> crosscheck archivelog all;的作用就是检查控制文件和实际物理文件的差别。
rman> delete expired archivelog all;就是同步控制文件的信息和实际物理文件的信息。
如果单独执行crosscheck而没有执行 delete那么备份还是失败的,原因是那些控制文件的信息和实际的信息还是不同
rman> crosscheck backupset; 是检查备份集和实际的文件
rman> delete expired backupset; 删除过期无效的备份集
1、备份集有两种状态A(Available,RMAN认为该项存在于备份介质 上)X(Expired,备份存在于控制文件或恢复目录中,但是并没有物理存在于备份介质上)
2、crosscheck 的目的是检查RMAN 的目录以及物理文件,如果物理文件不存在于介质上,将标记为Expired。如果物理文件存在,将维持Available。如果原
先标记为 Expired的备份集再次存在于备份介质上(如恢复了损坏的磁盘驱动器后),crosscheck将把状态重新从Expired标记回 Available。
3、crosscheck 输出分两部分。之一部分列出确定存在于备份介质上的所有备份集片,第二部分列出不存在于备份介质上的备份集片,并将其标记为Expired。
当设 置备份保存策略后,一个备份过期,crosscheck之后标记为丢弃的备份状态依旧为availabel,要删除丢弃备份
rman〉delete obsolete
五、rman 备份操作
# rman nocatalog 以nocatalog 方式登录rman
rman〉 connect target sys/password@tnsname 连接到目标库 ,如果数据库及 监听没有启动,这是不行的应该
rman〉connect target / 提示连接到一个idle instance
rman〉 startup 启动数据库这个根sqlplus 里面的操作一样的。
数据库全备
rman〉 backup database plus archivelog delete input;
这个也是一个全备(包括了 datafile,controlfile,spfile,archivelog),可 以不要delete input ,表示备份完成后,把archive log 删除,以节约空间。
数据库增备
rman〉backup incremetal level=0 database plus archivelog;
rman〉backup incremetal level=1 database plus archivelog;
备份表空间
rman〉 report schema; 显示整个数据库的规划情况表,包含tablespace, datafile等。
rman〉backup tablespace users; 全备份 users 表空间
备份控制文件
rman> backup current controlfile; 单独备份controlfile
或
rman> backup database include current controlfile;
全备份数据库时,默认 已经包含了,可以不指明。(可以通过这样来增加controlfile的镜像)
镜像备份,相当于拷贝:
rman〉copy datafile 5 to ‘/u01/rmanbak/tbs01bak.dbf’;
5 为对应于rman> report schema; 文件号
rman〉list copy; 显示copy 的镜像备份
rman批命令备份:
rman〉run{
allocate channel cha1 type disk;
backup format “/u01/rmanbak/full_%t”
tag full-backup
database;
release channel cha1;
}
linux rman自动备份配置的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于linux rman自动备份配置,Linux RMAN自动备份配置教程,rman备份archive destination默认值在哪个目录的信息别忘了在本站进行查找喔。
成都创新互联科技有限公司,经过多年的不懈努力,公司现已经成为一家专业从事IT产品开发和营销公司。广泛应用于计算机网络、设计、SEO优化、关键词排名等多种行业!
新闻标题:LinuxRMAN自动备份配置教程(linuxrman自动备份配置)
文章URL:http://www.csdahua.cn/qtweb/news8/8658.html
网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网