このドキュメントでは、obshellのテナントコマンドについて説明します。テナントコマンドは、テナントの作成と管理に使用できます。このコマンドを使用する前に、OceanBaseクラスタが初期化されている必要があります。コマンドのヘルプ情報を表示するには、-h / --help オプションを設定してください。タスク実行時にエラーが発生した場合は、-v / --verbose オプションを設定して、コマンドの詳細な実行プロセスを確認できます。
obshell tenant create
このコマンドを使用すると、業務テナントを作成できます。
${home_path}/bin/obshell tenant create <tenant_name> [-z] [-u] [--unit_num] [--replica_type] [--primary_zone] [--charset] [--collation] [--info] [--read_only]
[--parameters] [--variables] [--whitelist] [--scenario] [--root_password]
# example
# テナントt1を作成し、クラスタの各Zoneに1つのFULLレプリカを配置します。使用するリソースプールの仕様はs1です。
/home/admin/oceanbase/bin/obshell tenant create t1 -u s1
home_path はOceanBaseデータベースのインストールディレクトリです。obshellはデフォルトでOceanBaseデータベースのインストールディレクトリ内の bin ディレクトリに配置されています。tenant_name は作成するテナント名です。
オプションの説明は以下の表を参照してください:
オプション名 |
必須 |
データ型 |
デフォルト値 |
説明 |
|---|---|---|---|---|
| -z/--zone | いいえ | string | なし | テナントのゾーン構成です。指定しない場合、クラスタ内のすべてのゾーンをデフォルトで使用します。 |
| -u/--unit | いいえ | string | なし | テナントリソースプールが使用するリソース仕様。
説明
|
| --unit_num | いいえ | int | 1 | テナントがターゲットゾーン上で使用するユニット数です。この値はターゲットゾーンのノード数より小さくする必要があります。 |
| --replica_type | いいえ | string | FULL | テナントがターゲットゾーン上で使用するレプリカタイプです。FULL(フル機能レプリカ)または READONLY(読み取り専用レプリカ)を指定できます。
説明
|
| --primary_zone | いいえ | string | RANDOM | テナントのプライマリゾーンです。読み書きサービスを提供するゾーンの優先順位を指定します。例えば、primary_zone ='zone1;zone2,zone3' は、当該テナントの読み書きサービスを優先的に zone1 が提供し、zone1 が zone2、zone3 よりも優先順位が高く、zone2 と zone3 は同じ優先順位であることを意味します。 |
| --scenario | いいえ | string | なし | テナントのワークロードタイプを指定します。選択可能な値は以下の通りです:
説明このオプションを使用してテナントのワークロードタイプを設定できるのは、OceanBaseクラスタがV4.3.0以降のバージョンの場合のみです。 |
| --variables | いいえ | string | なし | テナントのシステム変数を指定します。形式は max_connections=1000,ob_query_time=1000000 です。 |
| --parameters | いいえ | string | なし | テナントのパラメータを指定します。形式は backup_data_file_size=2G,arbitration_timeout=10s です。 |
| --whitelist | いいえ | string | なし | テナントのアクセスホワイトリストを指定します。 |
| --root_password | いいえ | string | なし | テナントのrootユーザーパスワードを指定します。 |
| --import_script | いいえ | bool | false | タイムゾーンデータとGISメタデータをシステムテナントにインポートするかどうかを制御します。値を指定する必要はありません。 |
| --read_only | いいえ | なし | なし | テナントを読み取り専用に設定するかどうかを指定します。 |
| --charset | いいえ | string | なし | テナントが使用する文字セットを指定します。 |
| --collate | いいえ | string | なし | テナントが使用する照合順序を指定します。 |
| --info | いいえ | string | なし | テナントの情報を指定します。 |
obshell tenant drop
このコマンドを使用すると、指定したテナントを削除できます。
${home_path}/bin/obshell tenant drop <tenant_name> [--recycle] [-y]
# example
/home/admin/oceanbase/bin/obshell tenant drop t1
home_path はOceanBaseデータベースのインストールディレクトリです。obshellはデフォルトでOceanBaseデータベースのインストールディレクトリ内の bin ディレクトリに配置されています。tenant_name は削除するテナント名です。
コマンドのオプションの説明は以下のとおりです:
オプション名 |
必須 |
データ型 |
デフォルト値 |
説明 |
|---|---|---|---|---|
| --recycle | いいえ | なし | なし | 値を指定する必要はありません。このオプションを指定すると、削除されたテナントはリサイクルバスケットに移動します。 |
| -y/--yes | いいえ | なし | なし | 2回目の確認をキャンセルするかどうかを制御します。値を指定する必要はありません。 |
obshell tenant modify
このコマンドを使用して、テナントのプライマリゾーン、ホワイトリストなどの属性を変更できます。
${home_path}/bin/obshell tenant modify <tenant_name> [--primary_zone] [--whitelist] [--password] [--old_password] [--new_password]
# example
/home/admin/oceanbase/bin/obshell tenant modify t1 --primary_zone RANDOM --whitelist '%'
home_path はOceanBaseデータベースのインストールディレクトリです。obshellはデフォルトでOceanBaseデータベースのインストールディレクトリ内の bin ディレクトリに配置されています。tenant_name は変更対象のテナント名です。
コマンドのオプションの説明は以下のとおりです:
オプション名 |
必須 |
データ型 |
デフォルト値 |
説明 |
|---|---|---|---|---|
| --primary_zone | いいえ | string | なし | テナントのプライマリゾーンを指定します。テナントが読み書きサービスを提供するゾーンの優先順位を指定します。例えば、primary_zone ='zone1;zone2,zone3' は、当該テナントの読み書きサービスを優先的に zone1 が提供し、zone1 が zone2、zone3 よりも優先順位が高く、zone2 と zone3 は同じ優先順位であることを意味します。 |
| --whitelist | いいえ | string | なし | テナントのアクセスホワイトリストを指定します。 |
| --password | いいえ | なし | なし | rootユーザーのパスワードを対話形式で変更するかどうかを指定します。値を指定する必要はありません。
説明このオプションは |
| --old_password | いいえ | string | なし | rootの現在のパスワードを設定します。rootユーザーのパスワードを変更する際に設定します。 |
| --new_password | いいえ | string | なし | rootユーザーの新しいパスワードを設定します。パスワードを変更する際に設定します。 |
obshell tenant lock
このコマンドを使用すると、テナントをロックできます。ロックされたテナントはユーザーからアクセスできなくなります。
${home_path}/bin/obshell tenant lock <tenant_name>
# example
/home/admin/oceanbase/bin/obshell tenant lock t1
home_path はOceanBaseデータベースのインストールディレクトリです。obshellはデフォルトでOceanBaseデータベースのインストールディレクトリ内の bin ディレクトリに配置されています。tenant_name はロック対象のテナント名です。
obshell tenant unlock
このコマンドを使用して、テナントのロックを解除できます。
${home_path}/bin/obshell tenant unlock <tenant_name>
# example
/home/admin/oceanbase/bin/obshell tenant unlock t1
home_path はOceanBaseデータベースのインストールディレクトリです。obshellはデフォルトでOceanBaseデータベースのインストールディレクトリ内の bin ディレクトリに配置されています。tenant_name はロックを解除するテナント名です。
obshell tenant rename
このコマンドを使用して、テナント名を変更できます。
${home_path}/bin/obshell tenant rename <tenant_name> <new_name>
# example
/home/admin/oceanbase/bin/obshell tenant rename t1 t2
home_path はOceanBaseデータベースのインストールディレクトリです。obshellはデフォルトでOceanBaseデータベースのインストールディレクトリ内の bin ディレクトリに配置されています。tenant_name は名前を変更する対象のテナント名、new_name はテナント名変更後の新しい名前です。
obshell tenant replica
このコマンドグループを使用して、テナントのレプリカを管理します。
obshell tenant replica add
このコマンドグループを使用すると、テナントレプリカを一括で追加できます。
${home_path}/bin/obshell tenant replica add <tenant_name> -z [-u] [--replica_type]
# example
/home/admin/oceanbase/bin/obshell tenant replica add t1 -z zone4,zone5 -u s1
home_path はOceanBaseデータベースのインストールディレクトリです。obshellはデフォルトでOceanBaseデータベースのインストールディレクトリ内の bin ディレクトリに配置されています。tenant_name はレプリカを追加するテナント名です。
コマンドのオプションの説明は以下のとおりです:
オプション名 |
必須 |
データ型 |
デフォルト値 |
説明 |
|---|---|---|---|---|
| -z/--zone | はい | string | なし | 新規レプリカが配置されるゾーンを指定します。複数のゾーンを指定する場合は、半角カンマ(,)で区切ります。 |
| -u/--unit | いいえ | string | なし | テナントリソースプールが使用するリソース構成。
説明
|
| --replica_type | いいえ | string | なし | ターゲットゾーン上のテナントのレプリカタイプ。FULL(フル機能レプリカ)または READONLY(読み取り専用レプリカ)を設定できます。
説明
|
obshell tenant replica delete
このコマンドを使用すると、テナントレプリカを一括で削除できます。
${home_path}/bin/obshell tenant replica delete <tenant_name> -z
# example
/home/admin/oceanbase/bin/obshell tenant replica delete t1 -z zone3
home_path はOceanBaseデータベースのインストールディレクトリです。obshellはデフォルトでOceanBaseデータベースのインストールディレクトリ内の bin ディレクトリに配置されています。tenant_name はレプリカを削除するテナント名です。
-z/--zone オプションを使用して、削除対象のレプリカが配置されているゾーンを指定することができます。このオプションは必須であり、複数のゾーンを指定する場合は半角カンマ(,)で区切ります。
obshell tenant replica modify
このコマンドを使用すると、レプリカのプロパティを一括で変更できます。
${home_path}/bin/obshell tenant replica modify <tenant_name> [-z] [-u] [--unit_num] [--replica_type]
# example
/home/admin/oceanbase/bin/obshell tenant replica modify t1 --unit s2 --unit_num 2
home_path はOceanBaseデータベースのインストールディレクトリです。obshellはデフォルトでOceanBaseデータベースのインストールディレクトリ内の bin ディレクトリに配置されています。tenant_name はレプリカのプロパティを変更するテナント名です。
コマンドのオプションの説明は以下のとおりです:
オプション名 |
必須 |
データ型 |
デフォルト値 |
説明 |
|---|---|---|---|---|
| -z/--zone | いいえ | string | なし | 変更対象のレプリカが配置されているゾーンを指定します。複数のゾーンを指定する場合は、半角カンマ(,)で区切ります。指定しない場合、デフォルトですべてのゾーン上のレプリカを変更します。 |
| -u/--unit | いいえ | string | なし | テナントリソースプールが使用するリソース仕様。
説明
|
| --unit_num | いいえ | string | なし | テナントがターゲットゾーン上に持つユニット数です。値はターゲットゾーンのノード数より小さくする必要があります。 |
| --replica_type | いいえ | string | なし | テナントがターゲットゾーン上に持つレプリカタイプです。FULL(フル機能レプリカ)または READONLY(読み取り専用レプリカ)を設定できます。
説明
|
obshell tenant parameter
このコマンドグループを使用して、テナントのパラメータを管理できます。
obshell tenant parameter set
このコマンドを使用して、テナントパラメータを設定します。
${home_path}/bin/obshell tenant parameter set <tenant_name> <name=value>
# example
/home/admin/oceanbase/bin/obshell tenant parameter set t1 cpu_quota_concurrency=10,_rowsets_enabled=true
home_path はOceanBaseデータベースのインストールディレクトリです。obshellはデフォルトでOceanBaseデータベースのインストールディレクトリ内の bin ディレクトリに配置されています。tenant_name は設定対象のテナント名です。パラメータは <name=value> の形式で設定し、複数のパラメータを設定する場合は半角カンマ(,)で区切ります。
例では、t1 がパラメータを設定するテナント名であり、cpu_quota_concurrency=10,_rowsets_enabled=true が t1 に設定されるパラメータです。
obshell tenant parameter show
このコマンドを使用して、テナントパラメータを照会できます。あいまい検索をサポートしています。
${home_path}/bin/obshell tenant parameter show <tenant_name> <parameter>
# example
/home/admin/oceanbase/bin/obshell tenant parameter show t1 cpu_quota_concurrency
home_path はOceanBaseデータベースのインストールディレクトリです。obshellはデフォルトでOceanBaseデータベースのインストールディレクトリ内の bin ディレクトリに配置されています。tenant_name はパラメータを照会する対象のテナント名を設定します。parameter は照会するパラメータ名を設定します。あいまい検索をサポートしています。
obshell tenant variable
このコマンド群を使用して、テナントのシステム変数を管理できます。
obshell tenant variable set
このコマンドを使用して、テナント全体のシステム変数を設定します。
${home_path}/bin/obshell tenant variable set <tenant_name> <name=value>
# example
/home/admin/oceanbase/bin/obshell tenant variable set t1 max_connections=10000,recyclebin=true
home_path はOceanBaseデータベースのインストールディレクトリです。obshellはデフォルトでOceanBaseデータベースのインストールディレクトリ内の bin ディレクトリに配置されています。tenant_name はシステム変数を設定するテナント名を設定する必要があります。システム変数は <name=value> の形式で構成し、複数のシステム変数を設定する場合は、半角カンマ(,)で区切ります。
obshell tenant variable show
このコマンドを使用して、テナントのシステム変数を照会できます。あいまい検索をサポートしています。
${home_path}/bin/obshell tenant variable show <tenant_name> <variable>
# example
/home/admin/oceanbase/bin/obshell tenant variable show t1 max_connections
home_path はOceanBaseデータベースのインストールディレクトリです。obshellはデフォルトでOceanBaseデータベースのインストールディレクトリ内の bin ディレクトリに配置されています。tenant_name はシステム変数を照会するテナント名を設定する必要があります。variable は照会するシステム変数を設定し、あいまい検索をサポートしています。
obshell tenant show
このコマンドを使用して、テナント情報を照会できます。
${home_path}/bin/obshell tenant show [tenant_name] [-d]
# example
/home/admin/oceanbase/bin/obshell tenant show t1
home_path はOceanBaseデータベースのインストールディレクトリです。obshellはデフォルトでOceanBaseデータベースのインストールディレクトリ内の bin ディレクトリに配置されています。tenant_name は照会対象のテナント名を設定する必要があります。tenant_name を指定しない場合、クラスタ内のすべてのテナント情報が表示されます。
-d/--show_detail オプションを使用して、テナントの詳細情報を表示するかどうかを設定できます。このオプションに値を指定する必要はありません。
obshell tenant backup
このコマンドを使用すると、指定したテナントのバックアップ関連パラメータを設定してバックアップを実行できます。
${home_path}/bin/obshell tenant backup <tenant_name> [flags]
# example
/home/admin/oceanbase/bin/obshell tenant backup t1 -d /path/to/backup/data --backup_mode incremental --encryption MySecretPassword
home_path はOceanBaseデータベースのインストールディレクトリです。obshellはデフォルトでOceanBaseデータベースのインストールディレクトリ内の bin ディレクトリに配置されています。tenant_name には、バックアップ対象のテナント名を設定する必要があります。
コマンドのオプションの説明は以下のとおりです:
オプション名 |
必須 |
データ型 |
デフォルト値 |
説明 |
|---|---|---|---|---|
| -d/--data_backup_uri | いいえ | string | なし | テナントのデータバックアップ宛先を設定します。以前にバックアップ宛先が設定されている場合、このオプションを指定しない場合は、以前の設定が適用されます。以前にバックアップ宛先が設定されていない場合、このオプションを指定しない場合は、デフォルトで空になります。 |
| -a/--archive_log_uri | いいえ | string | なし | テナントのログアーカイブ宛先を設定します。以前にログアーカイブ宛先が設定されている場合、このオプションを指定しない場合は、以前の設定が適用されます。以前にログアーカイブ宛先が設定されていない場合、このオプションを指定しない場合は、デフォルトで空になります。 |
| -m/--backup_mode | いいえ | string | full | データバックアップモード。full と incremental の値を取り得ます。それぞれフルバックアップ (full) と増分バックアップ (incremental) を表します。 |
| -c/--log_archive_concurrency | いいえ | int | なし | ログアーカイブのワーカースレッドの総数。 |
| -b/--binding | いいえ | string | Optional | アーカイブと業務の優先モードを設定します。現在、Optional (ユーザー業務優先) と Mandatory (アーカイブ優先) の設定をサポートしています。設定しない場合、デフォルトは Optional モードです。 |
| -i/--piece_switch_interval | いいえ | string | なし | piece の切り替え周期を設定します。値の範囲は [1d, 7d] です。 |
| -e/--encryption | いいえ | string | なし | バックアップ後のバックアップセットにパスワードを設定します。このオプションを設定した場合、そのバックアップセットを使用して復元する際には、このパスワードを入力する必要があります。また、このパスワードは削除できません。 |
| -l/--archive_lag_target | いいえ | string | なし | テナントのログアーカイブの遅延時間を制御します。変更が必要な場合は、ログアーカイブ宛先の設定が完了していることを確認してください。 |
| -D/--delete_policy | いいえ | string | default | クリーンアップポリシーを設定します。クリーンアップポリシーが設定されたテナントは、毎時1回自動クリーンアップが実行されます。現在、default の設定のみをサポートしており、これは -d/--data_backup_uri と -a/--archive_log_uri の値のうち、バックアップされたもののみを対象とする自動クリーンアップを意味します。 |
| -r/--delete_recovery_window | いいえ | string | なし | バックアップデータの復元可能な時間窓を設定します。設定時には時間単位を指定する必要があります。このオプションの使用については、バックアップ関連パラメータの紹介を参照してください。 |
| -s/--ha_low_thread_score | いいえ | int | なし | バックアップ、バックアップクリーンアップなどの中低優先順位タスクの現在のワーカースレッド数を指定します。値の範囲は [0, 100] です。 |
| -P/--plus_archive | いいえ | なし | なし | データバックアップ処理中にアーカイブログも同時にバックアップするかどうかを制御します。値を指定する必要はありません。このオプションを追加すると、最終的にバックアップディレクトリにアーカイブログを含む完全なデータセットが生成されます。 |
| -y/--yes | いいえ | なし | なし | -y/--yes を設定すると、二度目の確認をキャンセルします。値を指定する必要はありません。 |
obshell tenant restore
このコマンドを使用すると、バックアップファイルを指定したテナントに復元できます。
${home_path}/bin/obshell tenant restore <tenant_name> [flags]
# example
/home/admin/oceanbase/bin/obshell tenant restore mytenant --timestamp "2021-01-01T00:00:00.000+08:00" -z "zone1,zone2,zone3" -d '/path/to/backup/data' -a '/path/to/backup/clog' -u unit1
home_path はOceanBaseデータベースのインストールディレクトリです。obshellはデフォルトでOceanBaseデータベースのインストールディレクトリ内の bin ディレクトリに配置されています。tenant_name は復元対象のテナント名です。
コマンドのオプションの説明は以下のとおりです:
オプション名 |
必須 |
データ型 |
デフォルト値 |
説明 |
|---|---|---|---|---|
| -d/--data_backup_uri | はい | string | なし | ソーステナントのデータバックアップパスです。 |
| -z/--zone | いいえ | string | なし | テナントのゾーン配置です。指定しない場合、クラスタ内のすべてのゾーンをデフォルトで使用します。 |
| --unit_num | いいえ | int | 1 | テナントがターゲットゾーン上に持つユニット数です。値はターゲットゾーンのノード数より小さくする必要があります。 |
| -u/--unit | いいえ | string | なし | テナントリソースプールが使用するリソース仕様。
説明
|
| --replica_type | いいえ | string | FULL | テナントがターゲットゾーン上に持つレプリカタイプです。FULL(フル機能レプリカ)または READONLY(読み取り専用レプリカ)に設定できます。
説明
|
| -p/--primary_zone | いいえ | string | RANDOM | テナントのプライマリゾーンです。読み書きサービスを提供するゾーンの優先順位を指定します。例えば、primary_zone ='zone1;zone2,zone3' は、当該テナントの読み書きサービスを優先的に zone1 が提供し、zone1 が zone2、zone3 よりも優先順位が高く、zone2 と zone3 は同じ優先順位であることを意味します。 |
| -T/--timestamp | いいえ | string | なし | 指定されたタイムスタンプまで復元します。形式は "2006-01-02T15:04:05.000Z07:00" のようにする必要があります。 |
| -S/--scn | いいえ | int | なし | 指定されたSCNまで復元します。 |
| -a/--archive_log_uri | いいえ | string | ${data_backup_uri} | ソーステナントのログアーカイブパスです。設定されていない場合、-d/--data_backup_uri の値と同じになります。 |
| -s/--ha_high_thread_score | いいえ | int | なし | 高可用性・高優先順位タスクの現在のワーカースレッド数を設定します。値の範囲は [0,100] です。 |
| -c/--concurrency | いいえ | int | なし | データ復元の並列度を指定します。指定しない場合、デフォルトでそのテナントに割り当てられた MAX_CPU 数と等しくなります。 |
| -D/--decryption | いいえ | string | なし | バックアップの復元パスワードを設定します。データバックアップ時にパスワードが追加された場合にのみ、バックアップの復元パスワードを設定する必要があります。 |
| -k/--kms_encrypt_info | いいえ | string | なし | 暗号化情報を設定します。暗号化されていない場合、または復元時に元のキーマネジメントサービスにアクセスできる場合は、設定不要です。 |
| -y/--yes | いいえ | なし | なし | -y/--yes を設定すると二度目の確認を省略します。値を指定する必要はありません。 |
obshell tenant archivelog
このコマンドを使用すると、指定したテナントのログアーカイブを開くことができます。
${home_path}/bin/obshell tenant archivelog <tenant-name> [flags]
# example
/home/admin/oceanbase/bin/obshell tenant archivelog t1
home_path はOceanBaseデータベースのインストールディレクトリです。obshellはデフォルトでOceanBaseデータベースのインストールディレクトリ内の bin ディレクトリに配置されています。t1 はログアーカイブを開く対象のテナント名です。
-y/--yes を設定することで、再確認を行うかどうかを制御できます。このオプションに値を指定する必要はなく、設定するだけで再確認が行われません。
obshell tenant noarchivelog
このコマンドを使用すると、指定したテナントのログアーカイブを無効にできます。
${home_path}/bin/obshell tenant noarchivelog <tenant-name> [flags]
# example
/home/admin/oceanbase/bin/obshell tenant noarchivelog t1
home_path はOceanBaseデータベースのインストールディレクトリです。obshellはデフォルトでOceanBaseデータベースのインストールディレクトリ内の bin ディレクトリに配置されています。t1 はログアーカイブを無効にするテナント名です。
-y/--yes を設定することで、再確認を行うかどうかを制御できます。このオプションに値を指定する必要はなく、設定するだけで再確認が行われません。