今年は、すべてのデータベースを11.2.0.2から11.2.0.3にアップグレードしようとしています。私の最初のアップグレードは、テストベッドに2ノードのRACスタンバイデータベースを備えた2ノードのRACプライマリで行われました。このデータベースは単なるスターターデータベースであるため、それほど多くはありません。ただし、これにより、プライマリとスタンバイの両方を備えたRACデータベースでのアップグレードをテストできます。途中でプロセスを文書化しました。
その後、開発データベースとテストデータベースをアップグレードする準備が整いました。 DBUAを使用してアップグレードを実行しましたが、問題なく実行されました。開発データベースとテストデータベースは本番環境のクローンであり、新しいバージョンでカスタムアプリケーションをテストすることができました。
最後に、私は生産をアップグレードする準備ができました。ここでも、DBUAを使用してプライマリデータベースのアップグレードを実行しました。しかし、今回はエラーが発生しました:
ORA-16205log_archive_dest2に繰り返し値または競合する値が含まれています
ええとああ。以前のアップグレードではこのエラーが発生していなかったため、これは予期しないことでした。開発データベースとテストデータベースにはスタンバイがないため、LOG_ARCHIVE_DEST2は設定されていません。私のテストベッドは少し異なって設定されているので、そこで問題を捉えることはできませんでした。これは予期せぬ出来事だったので、その夜にアップグレードをキャンセルし、問題の根底に立ち、後日アップグレードを再スケジュールすることにしました。
データベースでSTARTUPUPGRADEを実行すると、バグ13387526(11.2.0.4で修正)がこのパラメーターのこの問題を引き起こす可能性があることを発見しました。テストベッドで、RACスタンバイを使用してRAC11.2.0.2データベースを作成しました。プライマリでは、LOG_ARCHIVE_DEST_2を本番環境に非常によく似たものに設定しました。このテストベッドでアップグレードを試みたところ、同じバグが発生しました。この問題を回避するために、LOG_ARCHIVE_DEST_2を「service =my_standbydb_unique_name=my_standby」に設定しました。この最小限のパラメータ設定で、アップグレードは正しく進行しました。アップグレードが完了したら、このパラメータを元の設定に戻しました。