8.4.3.2 データベース・サーバーのpatchmgr構文
patchmgrを使用して、Oracle Exadataデータベース・サーバーのソフトウェアを更新できます。
前提条件
patchmgrは、Oracle Linuxを実行しているOracle Exadataデータベース・サーバーまたはOracle Exadata以外のシステムである駆動システムで実行されます。これにより、中央のサーバーからpatchmgrを実行して、複数のOracle Exadataシステムを更新できます。patchmgrがOracle Exadataデータベース・サーバーから実行される場合、そのデータベース・サーバーは、patchmgrコマンドのターゲットにすることはできません。
データベース・サーバーのpatchmgr構文
./patchmgr --dbnodes database_node_file
{ --backup --repo { base_URL | zipped_iso_file } [--rolling] [--unkey] |
--precheck --repo { base_URL | zipped_iso_file } --target_version version [ --unkey ]
[ --live-update-target { highcvss | allcvss | full } ]
[ { --additional-rpms { rpm_spec[,rpm_spec]... | rpm_dir } |
--additional-rpms-list rpm_list }
[ --additional-rpms-from-repo ] ] |
--upgrade --repo { base_URL | zipped_iso_file } --target_version version [ --rolling ] [ --unkey ]
[ --live-update-target { highcvss | allcvss | full } [ --live-update-schedule-outstanding-work { timestamp | never }] ]
[ { --additional-rpms { rpm_spec[,rpm_spec]... | rpm_dir } |
--additional-rpms-list rpm_list }
[ --additional-rpms-from-repo ] ] |
--complete [ --target_version version ] [--unkey] |
--rollback [--rolling] [--unkey] |
--cleanup [--unkey] |
--live-update-schedule-outstanding-work { timestamp | never | reset } |
--live-update-list-outstanding-work }
[ --log_dir { log_directory | auto } ]
メイン引数
引数 | 説明 |
---|---|
--dbnodes database_node_file |
database_node_fileは、patchmgr操作のターゲットであるデータベース・サーバーを識別するテキスト・ファイルです。 このファイルが存在し、各行に1つのターゲット・データベース・サーバーのホスト名またはIPアドレスが含まれている必要があります。patchmgrを実行しているサーバーは、ファイルに含めることができません。 |
--backup |
ホスト・リストに指定されたデータベース・ノードのバックアップを実行します。 ローリング方式(一度に1つのノード)でバックアップを実行するには、 |
--precheck |
ホスト・リストで指定されたデータベース・ノードでアップグレード前の検証チェックを非ローリング方式で実行します。 |
--upgrade |
ホスト・リストに指定されたデータベース・ノードを更新します。 ローリング方式(一度に1つのノード)で更新を実行するには、 Exadataライブ・アップデートを使用して更新を実行するには、 |
--complete |
'完了ステップ'のみを実行します。通常、これはすでに--upgrade の一部として実行されているため、これを別々に実行する必要はありません。ノート: データベース・スタックまたはユーザー・ドメインが起動している場合、それを停止して再起動します。
|
--rollback |
ホスト・ファイルに指定されたデータベース・ノードをロールバックします。 ローリング方式(一度に1つのノード)でロールバックを実行するには、 |
--cleanup |
非ローリング方式で、ホスト・リストに指定されたデータベース・サーバーのすべての一時コンテンツをクリーン・アップします。 |
Exadata Databaseサーバーを更新するためのオプション
データベース・サーバーのパッチ適用およびロールバックでは、次のオプションがサポートされています:
表8-3 Exadataデータベース・サーバーのpatchmgrオプション
オプション | 説明 |
---|---|
|
アクティブなNFSまたはSMBマウントを使用して これは |
|
署名されていないリポジトリでの |
|
パッチISOイメージと ノート: 提供された場所はローカル・ファイル・システムの絶対パスである必要があり、十分な空き領域およびinodeが必要です。 |
|
データベース・サーバーの更新に主要なオペレーティング・システムの更新が含まれている場合は、カスタムRPMを削除します。たとえば、Oracle Linux 7からOracle Linux 8へのアップグレードです。 |
--ignore_alerts |
Exadataサーバーのアクティブ・ハードウェア・アラートを無視し、パッチ適用を続行します。 |
|
ログ・ディレクトリへの絶対パス、または
|
|
以前は高速ホーム・プロビジョニング(RHP)と呼ばれていたフリート・パッチ適用およびプロビジョニングのデータベース接続の排出を無効にします。接続排出の可用性は、Oracle Grid Infrastructureのリリースによって決まります。このオプションは、ローリング更新にのみ適用されます。 |
|
更新の前にデータベース・サーバーをバックアップしないでください。 |
|
Exadata更新リポジトリのベースURLまたは圧縮されたISOファイルへのパスを指定します。 このオプションは、 |
|
更新が一度に1つのサーバーのローリング方式で実行されるよう指定します。指定しない場合、更新は非ローリング方式で実行されます。 環境変数 ノート: |
|
各ノードを更新する前にローリング方式でバックアップするようpatchmgrに指示します。このオプションが指定されていない場合(デフォルト)、patchmgrは最初のノードを更新する前に、すべてのノードのバックアップをパラレルに完了します。 このオプションは
|
|
Oracle Grid InfrastructureおよびOracle DatabaseホームとOracle Linux 7との互換性の動作保証をスキップします。 Oracle Linux 6からOracle Linux 7への更新の場合のみ。 |
|
patchmgr通知の送信元(from)の電子メール・アドレスを指定します。 |
|
patchmgr通知の送信先(to)の電子メール・アドレスを指定します。 |
|
「Return-Path:」メール・ヘッダーと同じ送信元(from)アドレスが使用されることを指定します。 |
--target_version version |
パッチのREADMEファイルに指定されている完全パッチ・バージョン。例: 23.1.8.0.0.231109 このオプションは、 |
--unkey |
終了する前にサーバーへのパスワードなしのSSHアクセスを削除します。 |
Exadataライブ・アップデートのオプション
Oracle Exadata System Softwareリリース24.1.0では、Exadataデータベース・サーバー用の一連の更新機能拡張であるExadataライブ・アップデートが導入されています。
Exadataライブ・アップデートでは、オンライン更新機能を使用します。更新の特定の内容によっては、データベースを中断したり、サーバーを再起動せずに操作が完了することがあります。再起動が必要な場合は、後の時点に延期することもできます。
Exadataライブ・アップデートでは、セキュリティの問題に対処するための部分的な更新もサポートされています。
ノート:
Exadataライブ・アップデートは、サポートしている特定の更新にのみ使用できます。詳細は、各更新に関連するリリース情報を常に参照してください。
次の追加オプションでは、Exadataデータベース・サーバー上のExadataライブ・アップデートがサポートされます:
表8-4 Exadataデータベース・サーバーでのExadataライブ・アップデートのpatchmgrオプション
オプション | 説明 |
---|---|
|
Exadataライブ・アップデートを使用して操作を実行します。
|
|
未処理の作業のスケジュールを制御します。 未処理の作業とは、オンラインで完了できず、システムの再起動を必要とする更新項目です。たとえば、Exadataライブ・アップデートでは、kspliceを使用してLinuxカーネルをオンラインで更新できますが、新しいLinuxカーネル・バージョンに変更するには、システムの再起動が必要です。 Exadataライブ・アップデート操作とともに未処理の作業を制御するには、
このオプションが適用されるのは、Exadataライブ・アップデートを使用する更新のみです。 |
|
未処理の作業を完了するようにスケジュールされているシステムの再起動に関する情報を表示します。 このオプションが適用されるのは、Exadataライブ・アップデートを使用する更新のみです。 |
追加RPMを更新するためのオプション
Oracle Linuxのメジャー・バージョン番号を変更しない更新の場合、Oracle Exadata System Softwareリリース25.1.0では、Exadataデータベース・サーバー更新操作の一部としてExadata以外の追加ソフトウェア・パッケージを更新するオプションが導入されています。この統合機能により、Exadata以外の追加ソフトウェア・パッケージがシステムにインストールされているときに発生するソフトウェア・パッケージ依存関係の問題に簡単に対処できます。
この機能を使用すると、--precheck
オプションを指定してpatchmgrを繰り返し実行し、システムにインストールされているExadata以外の追加ソフトウェア・パッケージに関連するパッケージ依存関係の問題を検出して解決できます。クリーンな更新に必要な追加パッケージ更新を理解すると、Exadataデータベース・サーバー更新を自信を持って実行し、同時に追加パッケージを更新できます。
次の追加オプションを使用すると、patchmgrを使用してExadataデータベース・サーバーのExadata以外の追加ソフトウェア・パッケージを更新できます。
ノート:
Oracle Linuxのメジャー・バージョン番号を変更する更新では、次のオプションは使用できません。たとえば、Oracle Linux 7からOracle Linux 8へのアップグレードです。
表8-5 追加RPMを更新するためのpatchmgrオプション
オプション | 説明 |
---|---|
|
オプションで、事前チェック操作または更新操作中に含める追加パッケージ(RPM)を指定します。 追加RPMをカンマ区切りリストとして指定することも、追加RPMが含まれるディレクトリの名前を指定することもできます。
あるいは、 |
|
オプションで、事前チェック操作または更新操作中に含める追加パッケージ(RPM)のリストを含むテキスト・ファイルを指定します。 ファイルでは、各RPMを別個の行で指定する必要があります。
あるいは、 |
|
オプションで、YumまたはDNFリポジトリからRPMを直接ダウンロードするように更新ターゲット・サーバーに指示します。 このオプションを使用するには、ターゲット・サーバーで適切なリポジトリが構成され、構成済リポジトリがターゲット・サーバーからアクセス可能である必要があります。 |
例
例8-7 データベース・サーバーのバックアップ後の更新の実行
次のコマンドは、Oracle Exadataデータベース・サーバーをバックアップし、データベース・サーバー更新の前提条件チェックを実行し、データベース・サーバーをローリング形式で更新します。
[root@pmserver ~]# ./patchmgr --dbnodes dbnode_group --backup --repo /var/stage/p35869377_231000_Linux-x86-64.zip --target_version 23.1.8.0.0.231109
[root@pmserver ~]# ./patchmgr --dbnodes dbnode_group --precheck --repo /var/stage/p35869377_231000_Linux-x86-64.zip --target_version 23.1.8.0.0.231109
[root@pmserver ~]# ./patchmgr --dbnodes dbnode_group --upgrade --nobackup --repo /var/stage/p35869377_231000_Linux-x86-64.zip --target_version 23.1.8.0.0.231109 --rolling
例8-8 Exadataライブ・アップデートを使用した更新の実行
次のコマンドは、Exadataライブ・アップデートを使用して完全更新を実行します。最初のコマンドは、事前チェック操作を実行します。2番目のコマンドは更新を実行します。3番目のコマンドは、更新によって発生した未処理の作業をすべて延期します。4番目のコマンドは、更新によって発生した未処理の作業に関する情報を表示します。最後のコマンドは、特定の時間に未処理の作業をスケジュールします。
[root@pmserver ~]# ./patchmgr --dbnodes dbs_group --precheck --repo /my/dir/exadata_ol8_24.1.0.0.0.240409_Linux-x86-64.zip --target_version 24.1.0.0.0.240409 --log_dir auto --live-update-target full
[root@pmserver ~]# ./patchmgr --dbnodes dbs_group --upgrade --repo /my/dir/exadata_ol8_24.1.0.0.0.240409_Linux-x86-64.zip --target_version 24.1.0.0.0.240409 --log_dir auto --live-update-target full
[root@pmserver ~]# ./patchmgr --dbnode dbs_group --live-update-schedule-outstanding-work never --log_dir auto
[root@pmserver ~]# ./patchmgr --dbnodes dbs_group --live-update-list-outstanding-work --log_dir auto
[root@pmserver ~]# ./patchmgr --dbnode dbs_group --live-update-schedule-outstanding-work "2024-12-31 23:10:10 PDT" -log_dir auto
例8-9 追加RPMを含む事前チェックの実行
この例では、--additional-rpms
オプションを使用してコマンドラインに指定された追加RPMファイルを含む事前チェックを示します。この場合、patchmgrコマンドは--additional-rpms-from-repo
オプションを使用しないため、patchmgrは、追加RPMファイルにアクセスして各ターゲット・サーバーに転送する必要があります。
[root@pmserver ~]# patchmgr --dbnodes dbs_group --precheck --repo /my/dir/exadata_ol8_25.1.0.0.0.241130_Linux-x86-64.zip --target_version 25.1.0.0.0.241130 --log_dir auto
--additional-rpms /my/dir/rpms/elfutils-debuginfod-client-0.190-2.el8.x86_64.rpm,/my/dir/rpms/elfutils-libelf-devel-0.190-2.el8.x86_64.rpm,/my/dir/rpms/keyutils-libs-devel-1.5.10-9.0.1.el8.x86_64.rpm
例8-10 追加RPMを含む更新の実行
この例では、/my/dir/additionalpackages1.txt
のテキスト・ファイルにローカル・ファイル名のリストとして指定された追加RPMファイルを含む更新を示します。この場合、patchmgrコマンドは--additional-rpms-from-repo
オプションを使用しないため、patchmgrは、追加RPMファイルにアクセスして各ターゲット・サーバーに転送する必要があります。
[root@pmserver ~]# cat /my/dir/additionalpackages1.txt
/my/dir/rpms/elfutils-debuginfod-client-0.190-2.el8.x86_64.rpm
/my/dir/rpms/elfutils-libelf-devel-0.190-2.el8.x86_64.rpm
/my/dir/rpms/keyutils-libs-devel-1.5.10-9.0.1.el8.x86_64.rpm
/my/dir/rpms/krb5-devel-1.18.2-28.0.1.el8_10.x86_64.rpm
[root@pmserver ~]# ./patchmgr --dbnodes dbs_group --upgrade --repo /my/dir/exadata_ol8_25.1.0.0.0.241130_Linux-x86-64.zip --target_version 25.1.0.0.0.241130 --log_dir auto --additional-rpms-list /my/dir/additionalpackages1.txt
例8-11 追加RPMを使用する更新の実行
この例では、/my/dir/additionalpackages1.txt
のテキスト・ファイルにHTTPS URLのリストとして指定された追加RPMファイルを含む更新を示します。この場合、patchmgrコマンドは--additional-rpms-from-repo
オプションを使用しないため、patchmgrは、追加RPMファイルをダウンロードして各ターゲット・サーバーに転送する必要があります。
[root@pmserver ~]# cat /my/dir/additionalpackages2.txt
https://yum-mirror.example.com/repo/OracleLinux/OL8/baseos/latest/x86_64/getPackage/sssd-nfs-idmap-2.9.4-3.0.1.el8_10.x86_64.rpm
https://yum-mirror.example.com/repo/OracleLinux/OL8/baseos/latest/x86_64/getPackage/timedatex-0.5-3.el8.x86_64.rpm
https://yum-mirror.example.com/repo/OracleLinux/OL8/baseos/latest/x86_64/getPackage/zlib-devel-1.2.11-25.el8.x86_64.rpm
[root@pmserver ~]# ./patchmgr --dbnodes dbs_group --upgrade --repo /my/dir/exadata_ol8_25.1.0.0.0.241130_Linux-x86-64.zip --target_version 25.1.0.0.0.241130 --log_dir auto --additional-rpms-list /my/dir/additionalpackages2.txt
例8-12 追加RPMを使用する更新の実行
この例では、/my/dir/additionalpackages3.txt
のテキスト・ファイルに指定された追加RPMファイルを含む更新を示します。この例では、--additional-rpms-from-repo
オプションを使用しているため、追加RPMファイルを識別するファイルにはRPM名のみが必要です。この場合、patchmgrは各ターゲット・サーバーにRPM名のみを伝播し、各ターゲット・サーバーは適切に構成されたYumまたはDNFリポジトリからRPMを直接ダウンロードします。
[root@pmserver ~]# cat /my/dir/additionalpackages3.txt
elfutils-debuginfod-client-0.190-2.el8.x86_64.rpm
elfutils-libelf-devel-0.190-2.el8.x86_64.rpm
keyutils-libs-devel-1.5.10-9.0.1.el8.x86_64.rpm
krb5-devel-1.18.2-28.0.1.el8_10.x86_64.rpm
zlib-devel-1.2.11-25.el8.x86_64.rpm
[root@pmserver ~]# ./patchmgr --dbnodes dbs_group --upgrade --repo /my/dir/exadata_ol8_25.1.0.0.0.241130_Linux-x86-64.zip --target_version 25.1.0.0.0.241130 --log_dir auto --additional-rpms-list /my/dir/additionalpackages3.txt --additional-rpms-from-repo
関連トピック
親トピック: patchmgrの構文