このトピックでは、PolarDBクラスターのバックアップファイルをダウンロードする方法について説明します。
リリース日
2023年11月24日
この機能はカナリアリリース中であり、まもなく正式に開始される予定です。
シナリオ
PolarDBは、完全なデータ復元と個々のデータベースまたはテーブルの復元に加えて、バックアップダウンロード機能を提供します。 次の目的で、クラスターのバックアップファイルをコンピューターにダウンロードできます。
バックアップファイル内のデータを照会します。
特定の時点でデータを照会します。
バックアップファイルをコンピュータに保存します。
監査用のバックアップファイルをダウンロードします。
バックアップファイルをObject Storage Service (OSS) バケットにアップロードします。
ダウンロードしたバックアップデータをPolarDB for MySQLクラスターに直接復元することはできません。 ただし、ダウンロードしたバックアップデータを自己管理型MySQLデータベースに復元できます。 詳細については、「スナップショットバックアップファイルを使用してPolarDBクラスターのデータを自己管理型MySQLデータベースに復元する」をご参照ください。
課金
ダウンロード用に生成されたファイル変換とインターネットトラフィックに対して課金されます。
バックアップファイルのダウンロードに失敗した場合、料金は発生しません。
インターネットトラフィック料金
内部ネットワーク経由のダウンロード: 消費したトラフィックに対しては課金されません。
インターネット経由のダウンロード: クラスター1か月あたり500 GBの無料クォータが使い果たされると、従量課金制で消費した過剰なトラフィックに対して課金されます。 料金は毎日アカウントから差し引かれます。 詳細については、「ネットワークトラフィック料金」をご参照ください。
バックアップファイルのダウンロードに使用されるインターネットトラフィックの料金を相殺するために、サブスクリプションネットワークプランを購入することを推奨します。 ネットワークプランの容量が大きいほど、割引が大きくなります。 詳細については、「ネットワークプランの使用」をご参照ください。
ファイル変換料金
PolarDBでは、バックアップファイルをCSV、SQL、またはParquetファイルに変換できます。 ファイル変換の料金が発生します。 バックアップファイルの変換に無料のクォータは提供されません。 次の表に、異なるリージョンでのバックアップファイル変換の単価を示します。
リージョン | 単価 (USD /GB) |
パブリッククラウド関連のリージョン | 0.03125 |
PolarDB コンソールにログインします。 [バックアップと復元] ページの [バックアップのダウンロード] タブで、[月ごとのバックアップデータサイズ] (ファイル変換データサイズ) と [月ごとのインターネットトラフィック] を表示できます。
前提条件
サポートされているバージョン
クラスターはPolarDB for MySQL Enterprise Editionクラスターです。
クラスターはPolarDB for MySQLを5.6、5.7、8.0.1、または8.0.2実行します。
サポートされるリージョン
中国 (成都) 、中国 (広州) 、中国 (青島) 、中国 (北京) 、中国 (上海) 、中国 (張家口) 、中国 (杭州) 、中国 (深セン) 、中国 (香港) 、マレーシア (クアラルンプール) 、インドネシア (ジャカルタ) 、日本 (東京) 、シンガポール、米国 (シリコンバレー) 、米国 (バージニア) 、ドイツ (フランクフルト) 。
この機能は、まもなく他のリージョンで利用できるようになります。
RAMアカウントの権限要件
バックアップダウンロード機能の認証機能は、RAM (Resource Access management) のポリシー管理機能に基づいています。
バックアップファイルのダウンロード権限を付与
ダウンロードタスクの作成や照会などにバックアップダウンロード機能を使用できない場合は、使用するRAMユーザーにAliyunDBSFullAccessポリシーがアタッチされているかどうかを確認します。 このポリシーでは、データベースバックアップ (DBS) を使用する権限を指定します。 RAMユーザーに権限を付与する方法の詳細については、「RAMユーザーに権限を付与する」をご参照ください。
ダウンロードURLを取得する権限を取り消す
RAMユーザーにバックアップおよび復元機能を使用させたいが、RAMユーザーにダウンロードURLを取得させたくない場合は、カスタムポリシーを作成して、ダウンロードURLを取得する権限を取り消すことができます。 詳細については、「カスタムポリシーの作成」をご参照ください。 スクリプト例:
{
"Version": "1",
"Statement": [
{
"Effect": "Deny",
"Action": "dbs:DescribeDownloadBackupSetStorageInfo",
"Resource": "*"
}
]
}
カスタムポリシーを作成したら、そのポリシーをRAMユーザーにアタッチする必要があります。 詳細については、「RAM ユーザーへの権限の付与」をご参照ください。 これにより、RAMユーザーはダウンロードURLを取得できません。
読み取り専用RAMユーザーにバックアップファイルをダウンロードする権限を付与
セキュリティを確保するため、AliyunPolardbReadOnlyAccessポリシーがRAMユーザーにアタッチされている場合、読み取り専用RAMユーザーはバックアップファイルをダウンロードできません。 ポリシーは、PolarDBリソースに対する読み取り専用権限を指定します。
RAMユーザーがバックアップファイルをダウンロードする必要がある場合は、AliyunDBSReadOnlyAccessポリシーをRAMユーザーにアタッチできます。 このポリシーは、DBSリソースに対する読み取り専用権限を指定します。 これにより、RAMユーザーは作成したダウンロードタスクのダウンロードURLを表示できます。
RAMユーザーに権限を付与する方法の詳細については、「RAMユーザーに権限を付与する」をご参照ください。
その他の要件
PolarDBクラスターのディスク暗号化機能は無効になっています。 ディスク暗号化機能が有効になっているPolarDBクラスターでは、バックアップダウンロード機能はサポートされていません。
制限事項
バックアップダウンロード機能を使用すると、ほとんどのスキーマをエクスポートできます。 ただし、一部のスキーマはエクスポートできません。
列情報、主キーインデックス、非主キーインデックス、一意インデックス、パーティションテーブル情報、テーブルエンジン、テーブルレベルまたはデータベースレベルの文字セットと文字照合順序をエクスポートできます。
式インデックス、外部キー、生成された列、非表示の列、ビュー、関数、ストアドプロシージャ、システム変数、またはトリガーをエクスポートすることはできません。
バックアップダウンロード機能は、空間データ型のフィールドをサポートしていません。 PolarDBクラスターに次の空間データ型のフィールドが含まれている場合、バックアップファイルの変換は失敗します。
GEOMETRY、POINT、LINESTRING、POLYGON、MULTIPOINT、MULTILINESTRING、MULTIPOLYGON、およびGEOMETRYCOLLECTION
PolarDBクラスターからエクスポートするCSVファイルには、次のシステムデータベースは含まれません。
information_schema
、mysql
、performance_schema
、sys
、および__recycle_bin_
Download DestinationパラメーターをOSSに設定した場合、標準ストレージクラスのみがサポートされます。 ストレージクラスを変更する方法については、「ストレージクラスの変換」をご参照ください。
レベル1バックアップファイルのデータのみダウンロードできます。 レベル2バックアップファイルのデータはダウンロードできません。
クラスターでコールドデータアーカイブが有効になっている場合、アーカイブされたコールドデータはダウンロードできません。 詳細については、「コールドデータのアーカイブ」をご参照ください。
手順
PolarDB コンソールにログインします。 左上隅のリージョンを選択し、クラスターのIDをクリックして 概要 ページに移動します。
左側のナビゲーションウィンドウで、[バックアップとリカバリ] をクリックします。
[バックアップと復元] ページで、[データバックアップ] をクリックします。
バックアップセットを見つけて、アクション 列の [クラスターバックアップのダウンロード] をクリックします。
説明デフォルトでは、PolarDBコンソールには、直近の8日間に生成されたバックアップセットが表示されます。 8日前に生成されたバックアップセットを表示する場合は、デフォルトの時間範囲を変更する必要があります。
[クラスターバックアップのダウンロード] が表示されない場合は、クラスターのメジャーエンジンのバージョンまたはリージョンが [前提条件] に記載されている要件を満たしているかどうかを確認します。
ウィザードの [時点とバックアップセット] ステップで、[時点でダウンロード] または [バックアップセットでダウンロード] を選択し、[次へ] をクリックします。
ウィザードの [インスタンス、データベース、およびテーブル] ステップで、[次へ] をクリックします。
説明デフォルトでは、インスタンスダウンロードが選択されています。
ウィザードの [宛先とフォーマット] ステップで、ダウンロード先とフォーマットを設定します。
重要効率を確保するために、Download DestinationパラメーターをOSSに設定することを推奨します。
バックアップダウンロードタスクは、開始後はキャンセルできません。
OSS (推奨): PolarDBはバックアップデータをOSSに直接書き込みます。 OSSバケットのバケット名とディレクトリプレフィックスを設定する必要があります。
説明OSSリソースへのアクセス権限がない場合は、コンソールの指示に従って
をクリックします。 権限が付与されたら、バックアップダウンロードタスクのパラメーターを設定します。URL: PolarDBは内部または外部URLを提供します。 URLを使用してバックアップデータをダウンロードできます。
説明URLメソッドを使用してバックアップデータをダウンロードすると、ダウンロードされたデータはDBSの内蔵ストレージに保存されます。 詳細については、「組み込みストレージとOSS」をご参照ください。
URLのダウンロードにはデータパッケージが含まれるため、追加の待ち時間が必要です。 このパッケージングプロセスの期間は、バックアップセットの論理サイズに大きく依存します。 バックアップセットの論理サイズが1テラバイトを超える場合は、[OSS] を選択することを推奨します。
ダウンロード形式パラメーターを設定します。
説明Download FormatパラメーターをCSV、SQL、Parquet、またはCSV-with-headerに設定できます。
指示を読んで選択し、[完了] をクリックします。
[バックアップダウンロード] タブが表示されます。
重要バックアップファイルをダウンロードすると、ファイル変換料金とインターネットトラフィック料金が請求されます。 詳細については、「課金ルール」をご参照ください。
サードパーティのダウンロードツールを使用してバックアップファイルをダウンロードすると、追加のトラフィックが生成され、追加料金が発生する可能性があります。 作業は慎重に行ってください。 詳細については、「ダウンロードコマンド」をご参照ください。
コンピューティングリソースは、ダウンロードされたバックアップセットを変換するために競合する。 その結果、一時的なリソース割り当てが失敗し、ダウンロードタスクが失敗する可能性があります。 ダウンロードタスクは、サポートされていない特別なデータ形式のために失敗する場合もあります。 ダウンロードタスクが失敗した場合は、再試行するか、DBSテクニカルサポートにお問い合わせください。
失敗したタスクに対して料金は発生しません。
Download DestinationパラメーターをOSSに設定し、タスクのステータスがRunningからFinishedに変更された場合、ダウンロードは成功します。 指定されたOSSバケットでダウンロードしたファイルを表示して使用できます。
説明この方法を使用すると、データはOSSバケットに直接ダウンロードされます。 ビジネス要件に基づいてデータを使用および削除できます。
[Download Destination] パラメーターをURLに設定し、タスクのステータスが [Finished] に変更された場合、[Download Destination] 列の [Generate Link] をクリックします。 [リンクの生成] ダイアログボックスで、[有効期間] パラメーターを設定し、[リンクの生成] をクリックします。 その後、生成されたURLを使用してバックアップデータをダウンロードできます。
重要タスク終了後3日以内にURLを取得できます。 URLの有効期間は5分から1日です。 デフォルトの有効期間は2時間です。
完了したタスクは3日で期限切れになります。 タスクの有効期限が切れると、URLは無効になります。
タスクの有効期限が切れると、一定期間後に対応するデータが自動的に削除されます。 データを使用する場合は、新しいダウンロードタスクを開始し、新しいダウンロードURLを取得する必要があります。
できるだけ早い機会にURLを保存し、URLの機密を保持することをお勧めします。
SQLファイル、CSVファイル、またはヘッダー付きCSVファイルを使用してダウンロードし、バックアップダウンロード機能を使用して変換して、PolarDBクラスターのデータを自己管理型MySQLデータベースに復元できます。 詳細については、「スナップショットバックアップファイルを使用してPolarDBクラスターのデータを自己管理型MySQLデータベースに復元する」をご参照ください。
よくある質問
ダウンロードしたデータバックアップファイルとログバックアップファイルを使用するにはどうすればよいですか?
自己管理型MySQLデータベースにダウンロードしたバックアップファイルのデータを復元できます。 詳細については、「スナップショットバックアップファイルを使用してPolarDBクラスターのデータを自己管理型MySQLデータベースに復元する」をご参照ください。
バックアップダウンロード機能を使用してダウンロードしたバックアップファイルのデータを自己管理型のMySQLデータベースに復元するときに、
エラー1148 (42000): 使用中のコマンドはこのMySQLバージョン
で許可されていません。自己管理MySQLデータベースで
SHOW VARIABLES LIKE 'local_infile';
ステートメントを実行します。 出力でOFFが返された場合は、SET
ステートメントを実行してグローバルlocal_infileパラメーターを1に設定し、ファイルのインポートを有効にします。 上記の操作を実行した後、インポートスクリプトを再実行します。PolarDBコンソールに表示されるバックアップファイルのサイズが、ダウンロードしたファイルのサイズと異なるのはなぜですか。
ダウンロードしたバックアップファイルは圧縮されています。 その結果、ダウンロードされたバックアップファイルのサイズは、PolarDBコンソールに表示されるファイルサイズよりも小さくなります。 バックアップファイルからデータを復元した後、データの整合性を確認できます。
PolarDBコンソールからダウンロードしたバックアップファイルを別のPolarDBクラスターに直接復元できますか。
バックアップファイルを別のPolarDBクラスターに直接復元することはできません。 バックアップファイルを別のPolarDBクラスターに復元する場合は、次の操作を実行します。バックアップファイルを自己管理型MySQLデータベースに復元してから、自己管理型データベースから必要なPolarDBクラスターにデータを移行します。 詳細については、「スナップショットバックアップファイルを使用してPolarDBクラスターのデータを自己管理型MySQLデータベースに復元する」および「自己管理型MySQLデータベースから」をご参照ください。
進行中のバックアップダウンロードタスクをキャンセルできますか?
いいえ、起動後にバックアップダウンロードタスクをキャンセルすることはできません。
ダウンロードコマンド
ここでは, バックアップファイルのダウンロードに使用するコマンドについて说明します。
ダウンロード速度が64 KB /秒より遅い場合、ダウンロードが中断される可能性があります。 バックアップファイルのダウンロード時に最適なネットワークステータスを確保することを推奨します。
ossfsを使用してアタッチされたディスクにバックアップファイルをダウンロードする場合は、ossfsのmultipart_sizeパラメーターの値を調整する必要があります。 このパラメーターの最大値は100 GBです。 ダウンロードするバックアップファイルのサイズが100 GBを超えると、ダウンロードは失敗します。 ossfsプラグインと対応するパラメーター設定の詳細については、「ossfs」および「ossfsでサポートされているオプション」をご参照ください。
このトピックで提供されているwgetやcurlなどのコマンドを使用して、バックアップファイルをダウンロードすることをお勧めします。 サードパーティのツールを使用してバックアップファイルをダウンロードすると、バックアップファイルが複数回ダウンロードされる場合があります。 その結果、ダウンロードされるデータの量がバックアップファイルのサイズよりも大きくなり、インターネット経由で過剰な量のデータをダウンロードするために消費されたトラフィックに対して課金される可能性があります。
wget
Command: nohup wget -c -t 0 "The URL of the backup file to download" -O The destination path and file name > The file to which the downloaded data is saved &
Example: nohup wget -c -t 0 "https://example.aliyundoc.com/examplebackup.qp.xb" -O /backup/examplebackup.qp.xb > /tmp/download.log &
The following section describes the options in the preceding command:
-t 0: enables an unlimited number of retries.
-c: enables resumable uploads.
-O: specifies the destination path and file name.
nohup: prevents the download from being interrupted when you accidentally replicate data or disconnect your database client during the download. If you specify this option, the download process automatically exits after the download is completed.
curl
Command: nohup curl -C - --retry 10 "The URL of the backup file to download" -o The user-defined name of the downloaded backup file > The file to which the downloaded data is saved &
Example: nohup curl -C - --retry 10 "https://example.aliyundoc.com/examplebackup.qp.xb" -o backup.qp.xb > /tmp/download.log &
The following section describes the options in the preceding command:
--retry 10: enables up to 10 retries if the download fails.
-C -: enables resumable uploads.
-o: specifies the destination path and file name.
nohup: prevents the download from being interrupted when you accidentally replicate data or disconnect your database client during the download. If you specify this option, the download process automatically exits after the download is completed.
関連する API
API | タイトル | 説明 |
DescribeDownloadBackupSetStorageInfo | ダウンロードしたバックアップセットのストレージ情報を照会します。 | |
DescribeDownloadSupport | インスタンスが高度なダウンロード機能をサポートしているかどうかを照会します。 | |
CreateDownload | ApsaraDB RDS for MySQLインスタンス、ApsaraDB RDS for PostgreSQLインスタンス、またはPolarDB for MySQLクラスターの高度なダウンロードタスクを作成します。 | |
DescribeDownloadTask | ApsaraDB RDS for MySQLインスタンス、ApsaraDB RDS for PostgreSQLインスタンス、またはPolarDB for MySQLクラスターの高度なダウンロードタスクを照会します。 |