ログアーカイブが開始された後、フルデータバックアップを開始できます。
前提条件
フルデータバックアップを実行する前に、以下の事項を確認してください:
現在アーカイブモードが有効であることを確認してください。データバックアップを開始できるのは、ログアーカイブタスクの
STATUSがDOINGの場合のみです。ログアーカイブタスクの状態を確認する操作については、アーカイブの進捗状況を確認するを参照してください。
アーカイブモードを有効にする操作については、アーカイブモードを有効にするを参照してください。
バックアップの準備(オプション)
データバックアップを開始する前に、バックアップ後のバックアップセットにパスワードを設定できます。
rootユーザーでクラスタのsysテナントにログインします。(オプション)以下のコマンドを実行して、バックアップのパスワードを設定します。
説明
このパスワードは、バックアップ後のバックアップセットのパスワードです。このオプションを設定した場合、そのバックアップセットを使用して復元する際にこのパスワードの入力が必要となり、このパスワードは削除できません。
obclient [(none)]> SET ENCRYPTION ON IDENTIFIED BY 'password' ONLY;例:
obclient [(none)]> SET ENCRYPTION ON IDENTIFIED BY '******' ONLY;説明
バックアップパスワードを設定した後、データバックアップを開始する前であれば、セッションを切断してからデータベースに再接続することで、この設定を取り消すことができます。
フルバックアップの開始
準備が整ったら、以下の方法でフルデータバックアップを開始できます。
現在のクラスタに sys、mysql_tenant、oracle_tenant の3つのテナントがあり、テナント mysql_tenant と oracle_tenant はいずれもデータバックアップ開始前の準備が完了していることを前提とします。
システムテナントによるフルバックアップの開始
sys テナントは、クラスタ内のすべてのテナントまたは指定したテナントに対してフルデータバックアップを開始できます。
rootユーザーでクラスタのsysテナントにログインします。(オプション)テナントのバックアップ並列度を設定します。
バックアップの並列度は、テナントレベルの構成パラメータ
ha_low_thread_scoreによって制御されます。このパラメータは、バックアップやバックアップのクリーンアップなどの中低優先順位タスクキューが使用するスレッド数を指定するために使用され、値の範囲は [0, 100] です。デフォルト値は0です。バックアップ開始前に、構成パラメータha_low_thread_scoreの値を適切に引き上げることができます。推奨される方法は、毎回値を2倍にすることです。構成パラメータha_low_thread_scoreの関連操作については、データバックアップ関連パラメータの確認を参照してください。構成パラメータ
ha_low_thread_scoreの詳細については、ha_low_thread_scoreを参照してください。クラスタ内のすべてのテナントのバックアップ並列度の設定
obclient [(none)]> ALTER SYSTEM SET ha_low_thread_score = 10 TENANT = all_user;または
obclient [(none)]> ALTER SYSTEM SET ha_low_thread_score = 10 TENANT = all;説明
OceanBaseデータベースはV4.2.1バージョンから、
TENANT = all_userとTENANT = allの意味が同じになりました。有効範囲をすべてのユーザーテナントに設定する場合は、TENANT = all_userの使用を推奨します。TENANT = allは今後廃止されます。クラスタ内の指定したテナントのバックアップ並列度の設定
obclient [(none)]> ALTER SYSTEM SET ha_low_thread_score = 10 TENANT = mysql_tenant;
以下のステートメントを実行して、フルデータバックアップを開始します。
クラスタ内のすべてのテナントに対してフルデータバックアップを開始する
この方法は、クラスタ内のすべてのテナントに対してフルデータバックアップを開始します。
ALTER SYSTEM BACKUP DATABASE [PLUS ARCHIVELOG];ここで、
PLUS ARCHIVELOGはオプションです。PLUS ARCHIVELOGを追加すると、データバックアップの過程でアーカイブログも同時にバックアップされ、最終的にバックアップディレクトリにはアーカイブログを含む完全なデータセットが生成されます。このデータセットは復元可能であり、アーカイブログに依存せずに、このデータセットを使用してテナントのデータをmin_restore_scnポイントに復元できます。さらに、コミュニティエディションのユーザーとシングルマシン版のユーザーは、このデータセットからスタンバイテナントを作成できます。アーカイブログを含む完全なデータセットを使用してスタンバイテナントを作成する手順の詳細については、BACKUP DATABASE PLUS ARCHIVELOG機能を使用してスタンバイテナントを作成するを参照してください。クラスタ内のすべてのテナントに対してフルデータバックアップを開始する例:
obclient [(none)]> ALTER SYSTEM BACKUP DATABASE;コマンドが正常に実行された後、この例では、システムはクラスタ内の
mysql_tenantおよびoracle_tenantテナントに対してフルデータバックアップを開始します。クラスタ内の指定したテナントに対してフルデータバックアップを開始する
この方法は、指定したテナントにのみフルデータバックアップを開始し、クラスタ内の他のテナントには影響しません。ステートメントは以下のとおりです:
ALTER SYSTEM BACKUP TENANT = mysql_tenant [PLUS ARCHIVELOG];mysql_tenantテナントに対してフルデータバックアップを開始する例:obclient [(none)]> ALTER SYSTEM BACKUP TENANT = mysql_tenant;説明
複数のテナントを同時に指定する場合、テナント名は半角カンマ (`,`) で区切ります。
コマンドが正常に実行された後、この例では、システムはクラスタ内の
mysql_tenantテナントに対してフルデータバックアップを開始します。
フルバックアップの過程では、フルバックアップの進捗状況をリアルタイムで確認できます。具体的な操作については、データバックアップの進捗状況を確認するを参照してください。
ユーザーテナントによるフルバックアップの開始
ユーザーテナントは自身のテナントに対してフルデータバックアップを開始でき、他のテナントには影響しません。
テナント管理者がデータベースにログインします。
この例では、
rootユーザーでmysql_tenantテナントにログインするか、SYSユーザーでoracle_tenantテナントにログインできます。(オプション)バックアップの並列度を設定します。
バックアップの並列度は、テナントレベルの構成パラメータ
ha_low_thread_scoreによって制御されます。このパラメータは、バックアップやバックアップのクリーンアップなどの中低優先順位タスクキューが使用するスレッド数を指定するために使用されます。値の範囲は [0, 100] で、デフォルト値は0です。バックアップを開始する前に、構成パラメータha_low_thread_scoreの値を適切に引き上げることができます。推奨されるのは、毎回値を2倍にすることです。構成パラメータha_low_thread_scoreの関連操作については、データバックアップ関連パラメータの確認を参照してください。構成パラメータ
ha_low_thread_scoreの詳細については、ha_low_thread_scoreを参照してください。obclient [(none)]> ALTER SYSTEM SET ha_low_thread_score = 10;以下のステートメントを実行して、フルデータバックアップを開始します。
ステートメントは以下のとおりです:
ALTER SYSTEM BACKUP DATABASE [PLUS ARCHIVELOG];ここで、
PLUS ARCHIVELOGはオプションです。PLUS ARCHIVELOGを追加すると、データバックアップの過程でアーカイブログも同時にバックアップされ、最終的にバックアップディレクトリにはアーカイブログを含む完全なデータセットが生成されます。このデータセットは復元可能であり、アーカイブログに依存せずに、このデータセットを使用してテナントのデータをmin_restore_scnポイントに復元できます。さらに、コミュニティエディションのユーザーとシングルマシン版のユーザーは、このデータセットからスタンバイテナントを作成できます。アーカイブログ付きの完全なデータセットを使用してスタンバイテナントを作成する手順の詳細については、BACKUP DATABASE PLUS ARCHIVELOG機能を使用してスタンバイテナントを作成するを参照してください。ユーザーテナントが自身のテナントに対してフルデータバックアップを開始する例は以下のとおりです:
obclient [(none)]> ALTER SYSTEM BACKUP DATABASE;コマンドが正常に実行されると、システムは自身のテナントに対してフルデータバックアップを開始します。
フルバックアップの過程では、フルバックアップの進捗状況をリアルタイムで確認できます。具体的な操作については、データバックアップの進捗状況を確認するを参照してください。