リストアされたスタンバイテナントをプライマリテナントに切り替えた後、もしあなたが低バージョンのバックアップデータを高バージョンのクラスタに復元した場合は、そのテナントをアップグレードする必要があります。
使用制限
現在、OceanBaseデータベースV4.1.0.0以降のバージョンでのみ、リストア完了後に以下の方法でテナントをアップグレードできます。
クイックリストアはこの機能をサポートしていません。
前提条件
リストアされたスタンバイテナントは既にプライマリテナントに切り替えられています。リストアされたスタンバイテナントをプライマリテナントに切り替える詳細な操作については、スタンバイテナントからプライマリテナントへの切り替えを参照してください。
手順
rootユーザーで、新しくリストアされたテナントが存在するクラスタのsysテナントにログインします。アップグレードコマンドを実行して、テナントをアップグレードします。
ステートメントは以下のとおりです:
ALTER SYSTEM RUN UPGRADE JOB "UPGRADE_ALL" TENANT = tenant_name;ここで、
tenant_nameは新しくリストアされたテナント名です。複数のリストアされたテナントを同時にアップグレードすることができ、複数のテナント名は半角カンマ(,)で区切ります。アップグレード後、現在のクラスタのバージョン番号に応じて、以下のステートメントを実行し、テナントが正常にアップグレードされたかどうかを確認します。
現在のクラスタがV4.2.1.1以下のバージョンの場合
クエリ例は以下のとおりです:
obclient [(none)]> SELECT distinct(value) FROM oceanbase.GV$OB_PARAMETERS WHERE tenant_id =1004;ここで、
1004は確認対象のテナントのtenant_idであり、tenant_idはビューDBA_OB_TENANTSをクエリすることで取得できます。実行が成功した場合、クエリ結果が1行であり、かつ
valueに現在のクラスタの4文字バージョン番号(例:4.2.1.0)が表示されていれば、テナントのアップグレードは成功です。現在のクラスタがV4.2.1.1以上のバージョンの場合
クエリ例は以下のとおりです:
obclient [(none)]> SELECT count(*) FROM oceanbase.DBA_OB_CLUSTER_EVENT_HISTORY WHERE event = 'UPGRADE_ALL' AND value3 ='4.2.1.1' AND value5 = '1004';ここで:
4.2.1.1は現在のクラスタの4文字バージョン番号を表します。1004は確認対象のテナントのtenant_idであり、tenant_idはビューDBA_OB_TENANTSをクエリすることで取得できます。
クエリ結果が
0以外の場合、テナントのアップグレードは成功です。