説明
このステートメントは、テナントのバックアップまたはアーカイブパスのソース側設定(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の両方のパラメータを同時に設定することも、max_iopsまたはmax_bandwidthのどちらか一方のみを個別に設定することもできます。I/Oスロットリングパラメータの設定は、オブジェクトストレージパスでのみサポートされており、NFSパスではサポートされていません。
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';