Oracle 中的RAC特性保護的是實例,RMAN特性保持的是數據,而Dataguard特性則是連實例帶數據一塊"保"了,三個特性相互配合能夠在一定程度上構建一個安全可靠高可用的Oracle數據庫平台。
之前有文章描述過RAC的創建、RMAN管理以及Dataguard特性應用等方面的內容,本文將通過實踐,演示如何為RAC數據庫創建Dataguard配置。
一、做足准備工作
Dataguard 環境的配置就跟談戀愛似的,不是一個人說了算,必須要兩個人(Primary db+Standby db)相互配合。不過在這兩個真正搭上線之前,臨出門拾掇拾掇還是非常有必要的,最起碼得照照鏡子,看看眼神夠不夠犀利,腰肢夠不夠芙蓉,做好往前推三百年,往後推三百年,總共六百年無人超越的思想准備。
我個人認為,DBA是個很嚴謹的崗位,因此同樣要求從事這項工作的人也盡可能嚴謹,准備這個事兒呢,是為了讓後續的操作更穩妥。對於Dataguard環境的創建,這個准備並不復雜,就當是環境初始化吧,如果看過之前的三思筆記--一步一步學Dataguard,那麼本步准備工作就可以直接跳過了。
設定環境如下:
Primary :
Db_unique_name :JSsdb
IP :192.168.10.11/12
DB Version :10.2.0.4
Storage :ASM
Standby :
Db_unique_name :JSsstd
IP :192.168.10.101
DB Version :10.2.0.4
Storage :local disk
准備工作如下:
Standby 端$Oracle_BASE/admin/下創建相應trace目錄;
Primary 和Standby端修改listener.ora和tnsnames.ora文件,配置監聽和本地的網絡服務名,要確保兩端通過tnsping能夠互通;
Primary 端置歸檔及force logging狀態;
查詢Primary端主要文件的路徑並記錄,一方面是為了後續路徑轉換,另外一方面省的復制文件時錯過了什麼,語句如下:
SQL> select name from v$datafile;
NAME
--------------------------------------------------------------------------------------------------------
+ASMDISK1/JSsdb/datafile/system.260.703671683
+ASMDISK1/JSsdb/datafile/undotbs1.259.703671695
+ASMDISK1/JSsdb/datafile/sysaux.266.703671697
+ASMDISK1/JSsdb/datafile/undotbs2.258.703671705
+ASMDISK1/JSsdb/datafile/users.257.703671709
+ASMDISK1/jssdb/datafile/JSstbs.269.703779631
6 rows selected.
SQL> select name from v$tempfile;
NAME
----------------------------------------------------------------------------------------------------------
+ASMDISK1/JSsdb/tempfile/temp.265.703671701
SQL> select member from v$Logfile;
MEMBER
---------------------------------------------------------------------------------------------------------
+ASMDISK1/JSsdb/onlinelog/group_1.263.703671679
+ASMDISK1/JSsdb/onlinelog/group_2.261.703671681
+ASMDISK1/JSsdb/onlinelog/group_3.256.703672257
+ASMDISK1/JSsdb/onlinelog/group_4.268.703672257