dataguard oracle 归档管理脚本
短信预约 -IT技能 免费直播动态提醒
管理部分
如果没有启用database force logging,则备库对操作,nologging操作,会报坏块;
建议表空间force logging或者database force logging;
--force logging /nologging 测试
alter database force logging;
select force_logging from dba_tablespaces;
select force_logging from v$database;
alter tablespace test force logging;
select logging,table_name,tablespace_name from user_tables where table_name ='TEST';
alter tablespace test no force logging;
select tablespace_name,logging,force_logging from dba_tablespaces;
##配置主库的归档删除策略
CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON STANDBY;
--传过去就删除
CONFIGURE ARCHIVELOG DELETION POLICY TO SHIPPED TO STANDBY;
备库删除脚本
vi delete_archive.sh
#!/bin/sh
source /home/oracle/.bash_profile
export ORACLE_SID=standby
TABLE='v$archived_log'
$ORACLE_HOME/bin/sqlplus -silent "/ as sysdba" <<EOF
set heading off;
set pagesize 0;
set term off;
set feedback off;
set linesize 199;
set trims on ;
set verif off;
spool /home/oracle/scripts/del_arch.sh;
select 'rm -rf '||name from v\$archived_log where DELETED='NO' and APPLIED='YES';
spool off;
exit;
EOF
chmod +x /home/oracle/scripts/del_arch.sh
sh /home/oracle/scripts/del_arch.sh
rman target / <<EOF
crosscheck archivelog all;
delete noprompt expired archivelog all;
exit;
EOF
增加定时任务:crontab -e
0 1 * * * su - oracle -c /home/oracle/scripts/delete_archive.sh 1
备库自启动脚本:
vi /etc/rc.local
su - oracle -c /home/oracle/scripts/start_db.sh
vi start_db.sh
source /home/oracle/.bash_profile
lsnrctl start
export ORACLE_SID=standby
sqlplus / as sysdba <<EOF
startup;
recover managed standby database using current logfile disconnect from session;
exit
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341