Oracle 11gR2 RAC + DG3を再度実行
最後の部分は、dgスタンバイデータベースasmディスクグループを構成しました,RACメインライブラリの準備, この部分は、dgスタンバイデータベースの準備を続けます,初期化ファイル,
制御ファイル,データベースファイルの回復, スタンバイログファイルが作成されました,RACメインライブラリからdgスタンバイライブラリへのログ同期など。
node1 node/rman_backupの下のデータベースファイルをバックアップします, 初期化ファイル,制御ファイル,
すべてのアーカイブログがコピーされるdgの/rman_backupの下
これは、node1 /rman_backup/の下のバックアップファイルです。
これらのファイルをFTPで転送する,または、dgバックアップライブラリの/ rman_backupディレクトリに転送する他の方法,転送は次のように完了します:
フィジカル・スタンバイ・データベースのパスワード・ファイルを作成します
dgedit.bash_profileは次のようになります:
エクスポートパス
エクスポートTMP = / tmp
TMPDIR = $ TMPをエクスポートします
ORACLE_HOSTNAME = dg.localdomainをエクスポートします
ORACLE_SID=phydbをエクスポートします
ORACLE_BASE = / u01 / app / oracleをエクスポートします
ORACLE_HOME = $ ORACLE_HOME / product / 11.2.0/db_1をエクスポートします
ORACLE_UNQNAME=phydbをエクスポートします
TNS_ADMIN = $ ORACLE_HOME / network/adminをエクスポートします
ORACLE_TERM = xtermをエクスポートします
PATH = / usr / sbinをエクスポートします:$道
PATH = $ ORACLE_HOME / binをエクスポートします:$道
LD_LIBRARY_PATH = $ ORACLE_HOME/JREをエクスポートします:$ORACLE_HOME / jlib:$ORACLE_HOME / rdbms / jlib
LANG = en_USをエクスポートします
NLS_LANG=american_americaをエクスポートします,AL32UTF8
NLS_DATE_FORMAT =’yyyy / mm / dd hh24/miをエクスポートします:ss’
umask 022
source .bash_profileを実行して、環境変数をすぐに有効にします
dgスタンバイライブラリの環境変数を出力します
dg-> 環境 | グリップORA
ORACLE_UNQNAME = phydb
ORACLE_SID = phydb
ORACLE_BASE = / u01 / app / oracle
ORACLE_HOSTNAME = dg.localdomain
ORACLE_TERM = xterm
ORACLE_HOME = / u01 / app / oracle / product / 11.2.0 / db_1
dgスタンバイデータベース初期化ファイルの変更
初期化テキストがnode1の/rman_backupからdgの/rman_backupにコピーされました, initphydb.oraという名前 ,
dgスタンバイデータベース/rman_backupの下のinitphydb.oraを$ORACLE_HOME/dbsにコピーします,dgは変更後にのみ使用できます。
初期化ファイルは次のように変更されます:
phydb .__ db_cache_size = 180355072
phydb .__ java_pool_size = 4194304
phydb .__ large_pool_size = 4194304
phydb .__ oracle_base =’/ u01 / app / oracle’
phydb .__ pga_aggregate_target = 335544320
phydb .__ sga_target = 402653184
phydb .__ shared_pool_size = 239075328
*.audit_file_dest =’/ u01 / app / oracle / admin / phydb / adump’
*.audit_trail =’db’
*.cluster_database = false
*.互換性=’11.2.0.0.0′
*.control_files =’+ DATA / phydb / controlfile / cont.ctl’
*.core_dump_dest =’/ u01 / app / oracle / diag / rdbms / phydb / cdump’
*.db_block_size = 8192
*.db_create_file_dest =’+ DATA’
*.db_file_name_convert =’+ DATA / devdb /’,’+ DATA / phydb /’
*.db_name =’devdb’
*.db_recovery_file_dest_size = 4070572032
*.db_unique_name =’phydb’
*.Diagnostics_dest =’/ u01 / app / oracle’
*.コーディネーター= '(プロトコル=TCP) (SERVICE = phydbXDB)’
*.fal_client =’phydb’
*.fal_server =’devdb1′,’devdb2′
*.log_archive_config =’dg_config =(devdb,phydb)’
*.log_archive_dest_1 =’location = USE_DB_RECOVERY_FILE_DEST valid_for =(all_logfiles,all_roles)
db_unique_name = phydb’
*.log_archive_dest_2 =’service = devdb1 valid_for =(online_logfiles,primary_role)
db_unique_name = devdb’
*.log_archive_format =’ARC_%t_%S_%r.arc’
*.log_file_name_convert =’+ DATA / devdb /’,’+ DATA / phydb /’
*.memory_target = 842006528
*.open_cursors = 300
*.プロセス=150
*.remote_login_passwordfile =’exclusive’
*.service_names =’phydb’
*.Standy_file_management =’auto’
*.スレッド=1
*.undo_management =’auto’
*.undo_tablespace =’UNDOTBS1
adumpとcdumpを作成する
mkdir -p / u01 / app / oracle / admin / phydb / adump
midir -p / u01 / app / oracle / diag / rdbms / phydb / cdump
+ DATA /の下にphydbを作成します。つまり、+ DATA / phydb /
グリッドユーザーログインdg
asmcmdを実行し、+data/の下にphydbディレクトリを作成します。
RACメインライブラリを構成する,dgスタンバイデータベースtnsnames.ora
node2のtnsnames.oraを表示する
その – 神託
cat $ ORACLE_HOME / network / admin / tnsnames.ora
不足しているdevdbが見つかりました,devdb1接続情報,追加後のtnsname.ora情報は以下のとおりです。
DEVDB =
(説明=
(アドレス= (プロトコル=TCP)(ホスト= 192.168.137.158)(ポート= 1521))
(CONNECT_DATA =
(サーバー=専用)
(SERVICE_NAME = devdb)
(INSTANCE_NAME = devdb)
)
)
devdb1 =
(説明=
(アドレス= (プロトコル=TCP)(ホスト= 192.168.137.151)(ポート= 1521))
(CONNECT_DATA =
(サーバー=専用)
(SERVICE_NAME = devdb
(INSTANCE_NAME = devdb1)
)
)
devdb2 =
(説明=
(アドレス= (プロトコル=TCP)(ホスト= 192.168.137.152)(ポート= 1521))
(CONNECT_DATA =
(サーバー=専用)
(SERVICE_NAME = devdb)
(INSTANCE_NAME = devdb2)
)
)
phydb =
(説明=
(アドレス= (プロトコル=TCP)(ホスト= 192.168.137.159)(ポート= 1521))
(CONNECT_DATA =
(サーバー=専用)
(SERVICE_NAME = phydb)
)
)
node2の変更されたtnsnames.oraをnode1およびdgの$ORACLE_HOME/ network /admin/にコピーします
これにより、接続情報の一貫性が保証されます
dgスタンバイライブラリの検出,scan-ipにアクセスできるかどうかを確認します , node1 , node2 , dg
conn scott / tiger @ devdb
conn scott / tiger @ devdb1
conn scott / tiger @ devdb2
この時点で、dgスタンバイデータベースの準備は完了です。.
dgスタンバイデータベースがマウント状態で開始されます
RACメインライブラリの制御ファイルを/rman_backupディレクトリにコピーしました,dgは制御ファイルを適用する必要がありますマウント状態に切り替えるには.
dgは最初にマウント解除状態を開始します,次に、RMANは制御ファイルを復元します
[root @ dg〜]# その – 神託
dg-> sqlplus
SQL * Plus: リリース 11.2.0.1.0 7月金曜日の制作 22 22:21:40 2016
著作権 (c) 1982, 2009, オラクル. 全著作権所有.
アイドル状態のインスタンスに接続されています.
SQL> スタートアップnomount;
ORACLEインスタンスが開始されました.
システムグローバル領域全体 839282688 バイト
固定サイズ 2217992 バイト
可変サイズ 587204600 バイト
データベースバッファ 247463936 バイト
バッファのやり直し 2396160 バイト
RMANリカバリ制御ファイル
[root @ dg〜]# その – 神託
dg-> rmanターゲット /
リカバリマネージャー: リリース 11.2.0.1.0 – 7月金曜日の制作 22 22:25:33 2016
著作権 (c) 1982, 2009, Oracleおよび/またはその関連会社. 全著作権所有.
ターゲットデータベースに接続されています: DEVDB (マウントされていません)
RMAN> 「/rman_backup/standby_0fr8au65_1_1.ctl」からスタンバイ制御ファイルを復元します;
で復元を開始 2016/06/22 00:06:15
リカバリカタログの代わりにターゲットデータベース制御ファイルを使用する
割り当てられたチャネル: ORA_DISK_1
チャネルORA_DISK_1: SID=24デバイスタイプ=DISK
チャネルORA_DISK_1: 制御ファイルの復元
チャネルORA_DISK_1: 復元が完了しました. 経過時間: 00:00:03
出力ファイル名=+DATA / phydb / controlfile / cont.ctl
で復元が完了しました 2016/06/22 00:06:18
dgスタンバイライブラリに制御ファイルが追加されたら、マウントできます。.
dgをOracleユーザーに切り替えます,sqlplusを入力した後、直接マウントするだけです
SQL> データベースマウントの変更;
データベースが変更されました.
SQL> v$databaseからopen_modeを選択します;
OPEN_MODE
————————————————————
取り付け済み
RMANリストアdgスタンバイデータベース
dg-> rmanターゲット /
RMAN> 走る
{チャネルc1タイプのディスクを割り当てます;
チャネルc2タイプのディスクを割り当てます;
チャネルc3タイプのディスクを割り当てます;
チャネルc4タイプのディスクを割り当てます;
データベースを復元する;
チャネルc1を解放します;
チャネルc2を解放します;
チャネルc3を解放します;
チャネルc4を解放します;
}
バックアップリカバリプロセスは次のとおりです:
これで、dgスタンバイデータベースが復元されました.
dgスタンバイデータベースはスタンバイログファイルを作成します
メインライブラリからREDOログを受信するためのスタンバイログファイルを作成します,次に、このログを定期的に使用して、データの同期と回復を行います
スタンバイログファイルを作成するために従うべきルールは次のとおりです。:まず、サイズはメインライブラリのサイズと同じである必要があります, 次に、インスタンスの下のロググループの数より1多い数です。.
次に、メインライブラリのインスタンスごとに(スレッド)スタンバイログファイルを作成する, もちろん、作成する前に関連するデータ情報を確認してください
RACメインライブラリnode1ロググループステータスの表示
SQL >選択する * v$logから; , ノードごとに2セットのログ.
standby_logを作成します
データベースの変更スタンバイログファイルスレッドの追加 1 グループ 5 サイズ50m, グループ 6 サイズ50m , グループ 7 サイズ50m;
データベースの変更スタンバイログファイルスレッドの追加 2 グループ 8 サイズ50m, グループ 9 サイズ50m , グループ 10 サイズ50m;
作成したスタンバイREDOログファイルを確認してください
SQL> group#、DBIDを選択します,v $standby_logからのTHREAD#、SEQUENCE#、STATUS;
GROUP#DBID THREAD#SEQUENCE#STATUS
———- ————— ———- ———- ———-
5 UNASSIGNED 1 0 UNASSIGNED
6 UNASSIGNED 1 0 UNASSIGNED
7 UNASSIGNED 1 0 UNASSIGNED
8 UNASSIGNED 2 0 UNASSIGNED
9 UNASSIGNED 2 0 UNASSIGNED
10 UNASSIGNED 2 0 UNASSIGNED
6 選択された行.
スタンバイログファイルのロググループ5、6、および7がTHREAD1にあることがわかります。,5,6,7THREAD2で.
プライマリデータベースからスタンバイデータベースへのログ同期を構成します
node1とnode2がOracleユーザーに切り替わります,インスタンスの接続性をテストする
sqlplus / sysdbaとして
conn sys / Oracle168 @ devdb as sysdba
conn sys / Oracle168 @ devdb1 as sysdba
conn sys / Oracle168 @ devdb2 as sysdba
conn sys / Oracle168 @ phydb as sysdba
node1構成により、RACメインライブラリのアーカイブログをdgスタンバイライブラリに転送できます。
システムセットの変更log_archive_dest_2=’service = phydb lgwr sync
valid_for =(online_logfiles,primary_role) db_unique_name = phydb’sid =’* ’;
パラメータlog_archiveを表示します;
node2は1回再起動します,次に、showparameterlog_archiveを実行します; log_archive_dest_state_2も有効になっている場合,
その後、構成は正しい.
rmanターゲット /
すべてのアーカイブログを一覧表示; 以下のように表示されます,その後、アーカイブが生成されました.
RACメインライブラリスイッチログをテストします,dgスタンバイデータベースが同期されているかどうか
RACメインデータベースとdgスタンバイデータベースのステータスを確認します
SQL> dbidを選択,名前,current_scn,保護モード,database_role,force_logging,open_mode,switchover_status
gv$databaseから;
DBID NAME CURRENT_SCN PROTECTION_MODE DATABASE_ROLE FOR OPEN_MODE SWITCHOVER_STATUS
———- ——— ———– ——————– —————- — ——————– ——————–
818758572 DEVDB 3454281 最高のパフォーマンスプライマリはい読み取りスタンバイへの書き込み
818758572 DEVDB 3454280 最高のパフォーマンスプライマリはい読み取りスタンバイへの書き込み
SQL> dbidを選択,名前,current_scn,保護モード,database_role,force_logging,open_mode,switchover_status
gv$databaseから;
DBID名CURRENT_SCNPROTECTION_MODEDATABASE_ROLE FORCE_LOGOPEN_MODE SWITCHOVER_STATUS
———- ——— ———– ——————– —————- — ——————– ——————–
818758572 DEVDB 3284512 最高のパフォーマンス物理的スタンバイはい取り付けられていません許可されていません
返された結果は次のとおりです。,RACメインライブラリnode1およびnode2, DATABASE_ROLEはPRIMARYです;FORCE_LOGINGがオンになっています,
OPEN_MODEは読み取り/書き込みです; SWITCHOVER_STATUSはスタンバイになります.
dgスタンバイデータベース,DATABASE_ROLEはPHYSICALSTANDBYです;FORCE_LOGINGがオンになっています;OPEN_MODEがマウントされています
SWITCHOVER_STATUSは許可されていません
ステータスがログ同期要件を満たしている.
node1からdgスタンバイデータベースへの同期をテストします,以下の画像は、正常な同期を示しています.
node2からdgへの同期操作方法はもうデモンストレーションされません.