2

12c 環境の Dataguard 構成で、プライマリ ( foo) からスタンバイ ( ) への切り替えを実行し、barで sqlplus を実行しようとすると、新しいプライマリ (バー) に接続できずuser@foo、" " エラーが発生します。ORA-011033: ORACLE initialization or shutdown in progress

fooこれは、接続がまだアドレスではなくアドレスを指しているためであることがわかりbarました。多くの記事によると、さまざまな接続を処理するための新しい「仮想」サービスと、停止するトリガーを作成する必要があります。 /役割の変更後にこのサービスを開始します。

私はこれを行い、service_namesパラメータをこの新しい「仮想」サービスに設定すると、スイッチオーバーが機能し、元に戻すこともできますが、sqlplus をuser@fooスローしようとするとORA-011033. トリガーは役に立たず、サービスは foo と bar の両方で実行され続けます。これは、そのパラメーターを設定すると、トリガーが実行しようとするものをオーバーライドするように見えるためです。

そのパラメーターを定義しないと、スイッチオーバーが正常に機能し、トリガーが機能し、 Isqlplus user@fooのときにアドレスに正しくリダイレ​​クトされbarます。ただし、 にスイッチオーバーしようとするとfoo、DG アラート ログに次のメッセージが表示されます。

Redo transport problem detected: redo transport to database foo has the following error:
ORA-16047: DGID mismatch between destination setting and target database 08/05/2016 16:01:02 Initialization of connection failed. Expected destination db_unique_name is foo. Database actually reached is bar Failed to send message to site foo. Error code is ORA-16642. Data Guard Broker Status Summary:
Type Name Severity Status Configuration foo_dg Warning ORA-16607 Primary Database bar Error ORA-16778 Physical Standby Database foo Error ORA-16642

オン・フー:

log_archive_dest_2='service="bar"','ASYNC NOAFFIRM delay=0 オプションの圧縮=無効 max_failure=0 max_connections=1 再開=300 db_unique_name="bar" net_timeout=30','valid_for=(online_logfile,all_roles)' fal_client= 'foo' fal_server='バー'

オンバー:

log_archive_dest_2='service="foo", ASYNC NOAFFIRM delay=0 オプションの圧縮=無効 max_failure=0 max_connections=1 再開=300 db_unique_name="foo" valid_for=(online_logfile,all_roles)' fal_client='bar' fal_server='foo'

LDAP のエントリ: foo:

(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=foo_home)(PORT=15940))(ADDRESS=(PROTOCOL=TCP)(HOST=bar_home)(PORT=15940)))(CONNECT_DATA=(サービス名) =virtual_foo)(FAILOVER_MODE=(TYPE=SESSION)(METHOD=基本))))

バー:

(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=bar_home)(PORT=15940)))(CONNECT_DATA=(SERVICE_NAME=bar)))

何が欠けているのか、誤解しているのかわかりません。私が間違っている可能性があることについて、誰かが光を当てることができますか? 必要に応じて、より多くの情報を提供できます。

4

0 に答える 0