説明
このステートメントは、テナントのバックアップまたはアーカイブパスのソース側設定(zone、idc、またはregion設定)、I/O スロットリングパラメータ(max_iopsおよびmax_bandwidth)、およびaccess_idやaccess_keyなどの鍵情報を変更するために使用します。変更後、新しい設定情報が元の設定情報を上書きします。
使用上の制限と注意事項
このステートメントはユーザーテナントのみが実行でき、システムテナント(sysテナント)では実行できません。
パスの
zone、idc、またはregion設定を変更する前に、リージョンレベルまたはIDCレベルを設定する必要がある場合は、まずALTER SYSTEM MODIFY ZONE zone_name SET REGION=region_name;またはALTER SYSTEM MODIFY ZONE zone_name SET IDC=idc_name;ステートメントを使用して、それぞれリージョン情報またはIDC情報を設定する必要があります。IDCレベルのソース側設定を推奨します。これにより、ネットワーク帯域幅リソースが豊富なIDCでバックアップタスクを実行することができ、バックアップタスクの選択可能なノード範囲が広がります。また、ユーザーはクラスタ内のIDC内のZoneの変更状況を気にする必要もありません。バックアップパスのソース側設定を変更する際、バックアップタスクが実行中の場合、実行中のタスクが設定の変更を認識するまでに最大数分かかるため、設定変更中に設定範囲外のノードがバックアップパスにアクセスし、データセンター間やリージョンを跨ぐトラフィックが発生する可能性があります。
I/Oスロットリングパラメータ(
max_iopsおよびmax_bandwidth)およびaccess_idとaccess_key情報の変更は、オブジェクトストレージパスでのみサポートされています。バックアップメディアがNFSのパスにI/Oスロットリングパラメータ(max_iopsおよびmax_bandwidth)またはaccess_id、access_key情報を設定しようとすると、システムはサポートされないエラーを返し、エラーコードは1235です。オブジェクトストレージパスに
ACCESS_INFOプロパティ(access_idとaccess_key情報)を設定する際、パラメータの形式が正しくない場合(例:余分な=、access_idまたはaccess_keyが欠けているなど)、システムはOB_OBJECT_STORAGE_PERMISSION_DENIEDエラー(エラーコード-9116)を返します。バックアップパスまたはアーカイブパスがAssume Role方式でオブジェクトパスにアクセスする場合:
ACCESS_INFO = 'access_id=new_access_id&access_key=new_access_key'を設定すると、システムはエラーを返します。ATTRIBUTEのI/Oスロットリングパラメータのみを設定し (ACCESS_INFOプロパティを設定しない場合)、システムはサポートされないと表示するか、設定が反映されない可能性があります。
同一パスに対して同じ
ATTRIBUTE+ACCESS_INFOプロパティを複数回設定することは許可されています。
権限要件
このステートメントを実行するユーザーは ALTER SYSTEM 権限が必要です。OceanBaseデータベースの権限に関する詳細は、MySQLモードの権限分類を参照してください。
構文
ALTER SYSTEM {ALTER|CHANGE|MODIFY} EXTERNAL_STORAGE_DEST
PATH [=] 'path'
SET [ATTRIBUTE = '[{zone=zone_name | idc=idc_name | region=region_name}][&max_iops=iops_num][&max_bandwidth=bandwidth_num]']
[ACCESS_INFO = 'access_id=new_access_id&access_key=new_access_key'];
パラメータ説明
パラメータ |
説明 |
|---|---|
| path | 変更対象のキー情報のバックアップパスまたはアーカイブパスを指定します。指定するパスは、現在のテナントで設定済みのバックアップパスまたはアーカイブパスである必要があり、オブジェクトストレージのパスである必要があります。また、パスには host 情報を含める必要があります。OSS を例にとると、このパスの形式は次のとおりです:oss://oceanbase-test-bucket/backup/databackup?host=***。 |
| zone=zone_name | idc=idc_name | region=region_name | 現在のバックアップパスまたはアーカイブパスのソースを指定します。zone、idc、region の3つの異なる階層の設定を選択できます。一度に1つの階層のみを選択するか、設定しないこともできます。明示的に指定しない場合、デフォルトでは設定されません。アーカイブパスのソース設定を変更する場合:
バックアップパスのソース設定を変更する場合:
|
| max_iops | 現在のバックアップパスまたはアーカイブパスで許可される最大IOPSを指定します。値は正の整数で、1秒間に約何回のI/Oリクエストを表します。明示的に設定しない場合、そのパスのIOPSに制限がなく、基盤となるオブジェクトストレージおよびネットワークの能力によって決定されることを意味します。 例: |
| max_bandwidth | 現在のバックアップパスまたはアーカイブパスで許可される最大帯域幅を指定します。値は単位を含む正の整数です。サポートされている単位はkb、mb、gbで、それぞれKB/s、MB/s、GB/sを表します。明示的に設定しない場合、そのパスの帯域幅に制限がないことを意味します。 例: |
| access_id=new_access_id&access_key=new_access_key | 変更後の新しい access_id と access_key 情報を指定します。access_id と access_key は両方とも入力する必要があります。 |
例
アーカイブパスのソース側設定を変更する
アーカイブパスの元のソース側設定が zone=z1,z2,z3 であると仮定します。現在、ソース側設定を region=region1 に変更する必要があります。変更後は、region1 内のノードのみがこのパスにアクセスできます。
OSS
obclient(root@mysql001)[(none)]> ALTER SYSTEM MODIFY EXTERNAL_STORAGE_DEST PATH='oss://oceanbase-test-bucket/backup/archive?host=****.aliyun-inc.com' SET ATTRIBUTE = 'region=region1';NFS
obclient(root@mysql001)[(none)]> ALTER SYSTEM MODIFY EXTERNAL_STORAGE_DEST PATH='file:///data/nfs/backup/archive' SET ATTRIBUTE = 'region=region1';S3
obclient(root@mysql001)[(none)]> ALTER SYSTEM CHANGE EXTERNAL_STORAGE_DEST PATH='s3://oceanbase-test-bucket/backup/archive?host=s3.<region>.amazonaws.com' SET ATTRIBUTE = 'region=region1';S3プロトコル互換のオブジェクトストレージ(OBS/GCS/COS)
obclient(root@mysql001)[(none)]> ALTER SYSTEM CHANGE EXTERNAL_STORAGE_DEST PATH='s3://oceanbase-test-bucket/backup/archive?host=obs.****.myhuaweicloud.com' SET ATTRIBUTE = 'region=region1';obclient(root@mysql001)[(none)]> ALTER SYSTEM MODIFY EXTERNAL_STORAGE_DEST PATH='s3://oceanbase-test-bucket/backup/archive?host=https://storage.googleapis.com' SET ATTRIBUTE = 'region=region1';obclient(root@mysql001)[(none)]> ALTER SYSTEM ALTER EXTERNAL_STORAGE_DEST PATH='s3://oceanbase-test-bucket/backup/archive?host=cos.ap-xxxx.myqcloud.com' SET ATTRIBUTE = 'region=region1';
バックアップパスのソース側設定を変更する
もともとデバイスのバックアップパスのソース側設定は zone=z1,z2;z3 でしたが、現在、ソース側設定を idc=idc1;idc2 に変更する必要があります。変更後、idc1 および idc2 内のノードはこのパスにアクセスでき、かつ idc1 の優先順位が idc2 より高くなります。
OSS
obclient(root@mysql001)[(none)]> ALTER SYSTEM CHANGE EXTERNAL_STORAGE_DEST PATH='oss://oceanbase-test-bucket/backup/data?host=****.aliyun-inc.com' SET ATTRIBUTE = 'idc=idc1;idc2';NFS
obclient(root@mysql001)[(none)]> ALTER SYSTEM ALTER EXTERNAL_STORAGE_DEST PATH='file:///data/nfs/backup/data' SET ATTRIBUTE = 'idc=idc1;idc2';S3
obclient(root@mysql001)[(none)]> ALTER SYSTEM MODIFY EXTERNAL_STORAGE_DEST PATH='s3://oceanbase-test-bucket/backup/data?host=s3.<region>.amazonaws.com' SET ATTRIBUTE = 'idc=idc1;idc2';S3プロトコル互換のオブジェクトストレージ(OBS/GCS/COS)
obclient(root@mysql001)[(none)]> ALTER SYSTEM CHANGE EXTERNAL_STORAGE_DEST PATH='s3://oceanbase-test-bucket/backup/data?host=obs.****.myhuaweicloud.com' SET ATTRIBUTE = 'idc=idc1;idc2';obclient(root@mysql001)[(none)]> ALTER SYSTEM MODIFY EXTERNAL_STORAGE_DEST PATH='s3://oceanbase-test-bucket/backup/data?host=https://storage.googleapis.com' SET ATTRIBUTE = 'idc=idc1;idc2';obclient(root@mysql001)[(none)]> ALTER SYSTEM ALTER EXTERNAL_STORAGE_DEST PATH='s3://oceanbase-test/backup/data?host=cos.ap-xxxx.myqcloud.com' SET ATTRIBUTE = 'idc=idc1;idc2';
変更アーカイブのパスを変更する access_id と access_key 情報
OSS
obclient(root@mysql001)[(none)]> ALTER SYSTEM MODIFY EXTERNAL_STORAGE_DEST PATH='oss://oceanbase-test-bucket/backup/archive?host=****.aliyun-inc.com' SET ACCESS_INFO = 'access_id=******&access_key=******';S3
obclient(root@mysql001)[(none)]> ALTER SYSTEM CHANGE EXTERNAL_STORAGE_DEST PATH='s3://oceanbase-test-bucket/backup/archive?host=s3.<region>.amazonaws.com' SET ACCESS_INFO = 'access_id=******&access_key=******';S3プロトコル互換のオブジェクトストレージ(OBS/GCS/COS)
obclient(root@mysql001)[(none)]> ALTER SYSTEM CHANGE EXTERNAL_STORAGE_DEST PATH='s3://oceanbase-test-bucket/backup/archive?host=obs.****.myhuaweicloud.com' SET ACCESS_INFO = 'access_id=******&access_key=******';obclient(root@mysql001)[(none)]> ALTER SYSTEM MODIFY EXTERNAL_STORAGE_DEST PATH='s3://oceanbase-test-bucket/backup/archive?host=https://storage.googleapis.com' SET ACCESS_INFO = 'access_id=******&access_key=******';obclient(root@mysql001)[(none)]> ALTER SYSTEM ALTER EXTERNAL_STORAGE_DEST PATH='s3://oceanbase-test-bucket/backup/archive?host=cos.ap-xxxx.myqcloud.com' SET ACCESS_INFO = 'access_id=******&access_key=******';
バックアップパスを変更する access_id と access_key 情報
OSS
obclient(root@mysql001)[(none)]> ALTER SYSTEM MODIFY EXTERNAL_STORAGE_DEST PATH='oss://oceanbase-test-bucket/backup/data?host=****.aliyun-inc.com' SET ACCESS_INFO = 'access_id=******&access_key=******';S3
obclient(root@mysql001)[(none)]> ALTER SYSTEM CHANGE EXTERNAL_STORAGE_DEST PATH='s3://oceanbase-test-bucket/backup/data?host=s3.<region>.amazonaws.com' SET ACCESS_INFO = 'access_id=******&access_key=******';S3プロトコル互換のオブジェクトストレージ(OBS/GCS/COS)
obclient(root@mysql001)[(none)]> ALTER SYSTEM MODIFY EXTERNAL_STORAGE_DEST PATH='s3://oceanbase-test-bucket/backup/data?host=obs.****.myhuaweicloud.com' SET ACCESS_INFO = 'access_id=******&access_key=******';obclient(root@mysql001)[(none)]> ALTER SYSTEM ALTER EXTERNAL_STORAGE_DEST PATH='s3://oceanbase-test-bucket/backup/data?host=https://storage.googleapis.com' SET ACCESS_INFO = 'access_id=******&access_key=******';obclient(root@mysql001)[(none)]> ALTER SYSTEM CHANGE EXTERNAL_STORAGE_DEST PATH='s3://oceanbase-test/backup/data?host=cos.ap-xxxx.myqcloud.com' SET ACCESS_INFO = 'access_id=******&access_key=******';
アーカイブパスのI/Oレート制限パラメータの設定(max_iops と max_bandwidth)
max_iopsとmax_bandwidthの両方のパラメータを同時に設定することも、どちらか一方のみを設定することもできます。この設定はオブジェクトストレージパスでのみサポートされており、NFSパスではI/Oレート制限パラメータの設定はできません。
OSS
max_iopsとmax_bandwidthの両方のパラメータを同時に設定する例を以下に示します。obclient(root@mysql001)[(none)]> ALTER SYSTEM MODIFY EXTERNAL_STORAGE_DEST PATH='oss://oceanbase-test-bucket/backup/archive?host=****.aliyun-inc.com' SET ATTRIBUTE = 'max_iops=1000&max_bandwidth=1000mb';max_iopsのみを設定する例を以下に示します。obclient(root@mysql001)[(none)]> ALTER SYSTEM MODIFY EXTERNAL_STORAGE_DEST PATH='oss://oceanbase-test-bucket/backup/archive?host=****.aliyun-inc.com' SET ATTRIBUTE = 'max_iops=1000';max_bandwidthのみを設定する例を以下に示します。obclient(root@mysql001)[(none)]> ALTER SYSTEM MODIFY EXTERNAL_STORAGE_DEST PATH='oss://oceanbase-test-bucket/backup/archive?host=****.aliyun-inc.com' SET ATTRIBUTE = 'max_bandwidth=1000mb';S3
max_iopsとmax_bandwidthの両方のパラメータを同時に設定する例を以下に示します。obclient(root@mysql001)[(none)]> ALTER SYSTEM CHANGE EXTERNAL_STORAGE_DEST PATH='s3://oceanbase-test-bucket/backup/archive?host=s3.<region>.amazonaws.com' SET ATTRIBUTE = 'max_iops=1000&max_bandwidth=1000mb';S3プロトコル互換のオブジェクトストレージ(OBS/GCS/COS)
max_iopsとmax_bandwidthの両方のパラメータを同時に設定する例を以下に示します。obclient(root@mysql001)[(none)]> ALTER SYSTEM CHANGE EXTERNAL_STORAGE_DEST PATH='s3://oceanbase-test-bucket/backup/archive?host=obs.****.myhuaweicloud.com' SET ATTRIBUTE = 'max_iops=1000&max_bandwidth=1000mb';obclient(root@mysql001)[(none)]> ALTER SYSTEM MODIFY EXTERNAL_STORAGE_DEST PATH='s3://oceanbase-test-bucket/backup/archive?host=https://storage.googleapis.com' SET ATTRIBUTE = 'max_iops=1000&max_bandwidth=1000mb';obclient(root@mysql001)[(none)]> ALTER SYSTEM ALTER EXTERNAL_STORAGE_DEST PATH='s3://oceanbase-test-bucket/backup/archive?host=cos.ap-xxxx.myqcloud.com' SET ATTRIBUTE = 'max_iops=1000&max_bandwidth=1000mb';
バックアップパスのI/Oレート制限パラメータの設定(max_iops と max_bandwidth)
説明
I/Oレート制限パラメータの設定に関する推奨事項:
- 高並行性で帯域幅に敏感なマルチテナント環境では、異なるバックアップパスごとに異なる
max_iopsまたはmax_bandwidthパラメータ値を設定し、バックアップが本番業務の帯域幅とIOPSに与える影響を分離することができます。 - 実際のネットワーク帯域幅とオブジェクトストレージの速度制限ポリシーを踏まえ、まずは低い値から設定し、徐々に調整することを推奨します。例えば、まず
max_iops=500&max_bandwidth=100mbに設定して動作を観察し、その後、バックアップにかかる時間と業務のピーク負荷に応じて微調整します。
max_iops と max_bandwidth の両方のパラメータを同時に設定することも、どちらか一方のみを設定することもできます。この設定はオブジェクトストレージのパスでのみサポートされており、NFSパスではI/Oレート制限パラメータの設定はできません。
OSS
max_iopsとmax_bandwidthの両方のパラメータを同時に設定する例を以下に示します。obclient(root@mysql001)[(none)]> ALTER SYSTEM MODIFY EXTERNAL_STORAGE_DEST PATH='oss://oceanbase-test-bucket/backup/data?host=****.aliyun-inc.com' SET ATTRIBUTE = 'max_iops=1000&max_bandwidth=1000mb';max_iopsのみを個別に設定する例を以下に示します。obclient(root@mysql001)[(none)]> ALTER SYSTEM MODIFY EXTERNAL_STORAGE_DEST PATH='oss://oceanbase-test-bucket/backup/data?host=****.aliyun-inc.com' SET ATTRIBUTE = 'max_iops=1000';max_bandwidthのみを個別に設定する例を以下に示します。obclient(root@mysql001)[(none)]> ALTER SYSTEM MODIFY EXTERNAL_STORAGE_DEST PATH='oss://oceanbase-test-bucket/backup/data?host=****.aliyun-inc.com' SET ATTRIBUTE = 'max_bandwidth=1000mb';S3
max_iopsとmax_bandwidthの両方のパラメータを同時に設定する例を以下に示します。obclient(root@mysql001)[(none)]> ALTER SYSTEM CHANGE EXTERNAL_STORAGE_DEST PATH='s3://oceanbase-test-bucket/backup/data?host=s3.<region>.amazonaws.com' SET ATTRIBUTE = 'max_iops=1000&max_bandwidth=1000mb';S3プロトコル互換のオブジェクトストレージ(OBS/GCS/COS)
max_iopsとmax_bandwidthの両方のパラメータを同時に設定する例を以下に示します。obclient(root@mysql001)[(none)]> ALTER SYSTEM CHANGE EXTERNAL_STORAGE_DEST PATH='s3://oceanbase-test-bucket/backup/data?host=obs.****.myhuaweicloud.com' SET ATTRIBUTE = 'max_iops=1000&max_bandwidth=1000mb';obclient(root@mysql001)[(none)]> ALTER SYSTEM ALTER EXTERNAL_STORAGE_DEST PATH='s3://oceanbase-test-bucket/backup/data?host=https://storage.googleapis.com' SET ATTRIBUTE = 'max_iops=1000&max_bandwidth=1000mb';obclient(root@mysql001)[(none)]> ALTER SYSTEM MODIFY EXTERNAL_STORAGE_DEST PATH='s3://oceanbase-test/backup/data?host=cos.ap-xxxx.myqcloud.com' SET ATTRIBUTE = 'max_iops=1000&max_bandwidth=1000mb';