一、概述
本文將介紹如何給rac搭建單節點的dg,以及如何對其進行角色轉換。預先具備的知識(rac搭建,單實例-單實例dg搭建)
二、實驗環境介紹
主庫rac(已安裝rac,并已有數據庫orcl)
rac1:192.168.56.11,sid1:orcl1,version:11.2.0.4rac2:192.168.56.12,sid2:orcl2,version:11.2.0.4
從庫(已安裝單實例數據庫軟件,無數據庫實例)
oradg:192.168.56.102,sid:orcldg,version:11.2.0.4

三、搭建dg
** 以下所有主庫操作都在節點1上做,如果需要在節點2上做的,我會標明
1. 主庫打開歸檔模式,并強制寫日志
先查看數據庫的歸檔狀態以及是否開啟強制寫日志,從下圖可以看到目前數據庫并沒有打開歸檔,也沒有開啟強制寫日志
SQL> select log_mode, force_logging from v$database;
數據庫在mount狀態下打開歸檔
SQL> alter system set log_archive_dest_1='location=+data' sid='*' scope=spfile;SQL> shutdown immediate; # 兩節點都關閉SQL> startup mount; # 只開啟節點1SQL> alter database archivelog;SQL> alter database open;
強制日志寫,數據庫在open狀態就能修改
SQL> alter database force logging;SQL> startup; # 當節點1open完畢后,在節點2上打開數據庫
再來查看數據庫的歸檔狀態以及是否開啟強制寫日志
SQL> select log_mode, force_logging from v$database;
2. 主庫打開dataguard開關
SQL> alter system set log_archive_config='dg_config=(orcl,orcldg)' sid='*'; # orcl是主庫的db_unique_name,orcldg是從庫的db_unique_name
3. 主庫設置遠程歸檔
SQL> alter system set log_archive_dest_3='service=orcldg valid_for=(online_logfiles,primary_role) db_unique_name=orcldg' sid='*';
4. 將主庫的口令文件傳送給從庫
[oracle@rac1 ~]$ scp $ORACLE_HOME/dbs/orapw$ORACLE_SID 192.168.56.102:$ORACLE_HOME/dbs/orapworcldg
5. 從庫準備參數文件
這里參數文件跟給單實例搭建單實例dg沒什么區別,所以不做具體介紹
[root@oradg ~]# vi $ORACLE_HOME/dbs/initorcldg.ora*.audit_file_dest='/u01/app/oracle/admin/orcldg/adump'*.audit_trail='db'*.compatible='11.2.0.4.0'*.control_files='/u01/app/oracle/oradata/orcldg/controlfile/control01.ctl'*.db_block_size=8192*.db_domain=''*.db_name='orcl'*.diagnostic_dest='/u01/app/oracle'*.log_archive_config='dg_config=(orcl,orcldg)'*.log_archive_dest_2='location=/u01/app/oracle/oradata/orcldg/archstdlog/ valid_for=(standby_logfiles,standby_role) db_unique_name=orcldg'*.memory_target=838860800*.open_cursors=300*.processes=150*.remote_login_passwordfile='exclusive'*.undo_tablespace='UNDOTBS1'standby_file_management=auto # 該參數默認值是manual,需要將其改為auto,表示主庫的數據文件發生修改(如新建,重命名等),相應地從庫也做相應修改db_unique_name='orcldg'db_file_name_convert='+DATA/orcl/datafile/','/u01/app/oracle/oradata/orcldg/datafile/','+DATA/orcl/tempfile/','/u01/app/oracle/oradata/orcldg/tempfile/'log_file_name_convert='+DATA/orcl/onlinelog/','/u01/app/oracle/oradata/orcldg/onlinelog/'
新聞熱點
疑難解答