rman recovery catalog
rman恢复目录
1. 建立一个另外的库当作恢复目录数据库
dbca,netmgr不解释
2. 然后连到这个数据库实例下建一个独立的表空间
create tablespace rmantbs datafile '/opt/ora10g/oradata/backup/rmantbs.dbf' size 20m;
3. 建一个用户授予必要的权限
grant connect,resource,recovery_catalog_owner to rmanct identified by rmanct;
4. 建立catalog表空间
create catalog tablespace rmantbs;
这样恢复目录数据库就弄好了。
这里是本地测试库,在配置监听时候遇到了个问题,rman target / catalog rmanct/rmanct@backupdb
时候报数据库backupdb的 ORA-12541: TNS:no listener
tnsping了一下,发现连接串正常,listener.org tnsname.org看起来都没问题,但是就是unreachable。重启监听,好了........@.@ Oracle你又卖萌了..
补充两个小问题:
1)一开始用sqlplus rmanct/rmanct@backupdb 也是报ORA-12541: TNS:no listener。但是sqlplus rmanct/rmanct(ORACLE_SID是backupdb)又完全没问题
原因,本地登录不需要listener和tnsname,只要ORACLE_SID就行了。在listener.ora和tnsname.ora里加好了以后,tnsping结果是unreachable,重启监听,好了..其实我也不知道是怎么回事....写下来备查,或者给遇到同样问题的同学们参考吧..@。@
2)我用的虚拟机虚拟的铁甲企鹅,想是本地库把网络给断了没什么关系吧,怎么tnsping都不通,然后重新连上..恩..好了...介个.....
以后用rman target / catalog rmanct/rmanct@backupdb 开始rman就有恢复目录啦 \(^o^)/~
用rman备份
我的目标就是能写个控制文件文件...好低..
开始写rman,配置参数show all一下就全出来了。而且命令敲错了的话会有个很萌的提示标题
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
configure是可以通过show all;查到的
练习:写一个文件INCRE_lv0.rman 作为0级恢复
run{
configure retention policy to recovery window of 14 days;
configure controlfile autobackup on;
configure controlfile autobackup format for device type disk to '/opt/ora10g/oradata/backup/%F';
allocate channel c1 device type disk format '/opt/ora10g/oradata/backup/INCRE_lv0_aegis_%T_%U';
backup as compressed backupset incremental level=0 database
plus archivelog filesperset 20
delete all input;
release channel c1;
}
allocate channel for maintenance device type disk;
crosscheck backupset;
delete noprompt obsolete;
然后rman target / log /opt/ora10g/oradata/rman/log/bak.log cmdfile=/opt/ora10g/oradata/rman/INCRE_lv0.rman
完成0级备份
再写个1级的..0级一礼拜跑一次 1级2天跑一次好了(之前学习的时候没备份,乱删文件把库弄坏了又不会在没备份情况下的恢复,好心疼)..