S3 エンドポイントを利用したバックアップ / リストア
この記事では、S3 エンドポイント経由で S3 バケットにバックアップを保存したり、S3 バケット上のバックアップからリストアしたりする方法について説明します。
構文
詳しくは、「コマンドの概要」を参照してください。
使用例
S3エンドポイントへの増分バックアップ
この例では、S3エンドポイントへバックアップを作成し、そこから復元を行います。
完全バックアップと増分バックアップの違いについては、「バックアップの種類」を参照してください
この方法を使用するには、以下の情報が必要です:
| パラメータ | 例 |
|---|---|
| S3エンドポイント | https://backup-ch-docs.s3.us-east-1.amazonaws.com/backups/ |
| アクセスキーID | BKIOZLE2VYN3VXXTP9RC |
| シークレットアクセスキー | 40bwYnbqN7xU8bVePaUCh3+YEyGXu8UOMV9ANpwL |
S3バケットの作成については、「S3オブジェクトストレージをClickHouseディスクとして使用する」のセクションを参照してください
バックアップの保存先は次のように指定します:
ベースバックアップの作成
増分バックアップには、開始点となる_ベース_バックアップが必要です。S3保存先の最初のパラメータはS3エンドポイントで、その後にこのバックアップに使用するバケット内のディレクトリが続きます。この例では、ディレクトリ名はmy_backupです。
以下のコマンドを実行してベースバックアップを作成します:
増分バックアップの取得
このバックアップコマンドはベースバックアップと似ていますが、SETTINGS base_backupとベースバックアップの場所が追加されています。増分バックアップの保存先はベースと同じディレクトリではなく、同じエンドポイントでバケット内の異なるターゲットディレクトリであることに注意してください。ベースバックアップはmy_backupにあり、増分はmy_incrementalに書き込まれます:
増分バックアップからの復元
このコマンドは、増分バックアップを新しいテーブルtest_table_restoredに復元します。
増分バックアップを復元する際、ベースバックアップも含まれることに注意してください。
復元時には増分バックアップのみを指定します: