オペレーションデータ管理バックアップと復元

バックアップと復元

Zeabur は、Dev プラン以上のユーザー向けにオフサイトバックアップ機能を提供しています。バックアップは Amazon S3 ストレージスペースに安全かつ一時的に保存され、既存のホストのスペースを占有せず、追加料金も発生しません。

データベースサービスの場合、Zeabur はオンラインおよび自動バックアップをサポートしており、ダウンタイムなしでデータベースをバックアップできます。その他のステートフルサービスについても、一時停止後のオフラインオフサイトバックアップ機能を提供しています。

サービスのバックアップ

オフラインオフサイトバックアップ

💡

ボリュームをマウントしていない場合、バックアップ機能は表示されません。「バックアップ」はボリューム内のデータのみをバックアップします。サービス内の他のファイル(ソースコードなど)はバックアップされません。

まず、サービスを一時停止する必要があります。サービスの「Settings」→「Suspend Service」をクリックして一時停止します。一時停止してもデータが失われることはありません。

次に、サービスの「Backup」タブをクリックすると、「Backup」ボタンが表示されます。

backup tab

クリックすると、Zeabur がバックグラウンドで自動的にサービスをバックアップします。数分お待ちください。バックアップが完了すると、ダウンロードボタンが表示され、クリックしてバックアップファイルをダウンロードできます。バックアップファイルの内容は、サービスのボリュームがマウントされているフォルダの完全な内容です。

backup success

バックアップが完了したら、「Overview」に移動して「Restart Service」をクリックしてサービスを再開できます。

オンラインオフサイトバックアップ

Zeabur は、PostgreSQL、MySQL、MariaDB、MongoDB などのデータベースに対して、サービスを一時停止せずに安全にバックアップできるオンラインオフサイトバックアップをサポートしています。また、「オンラインオフサイトバックアップ」サービスは自動バックアップもサポートしています。

online backup

「オフラインオフサイトバックアップ」と同様に、「Backup」ボタンをクリックすると、Zeabur がバックグラウンドで自動的にバックアップします。数分お待ちください。バックアップが完了すると、ダウンロードボタンが表示され、クリックしてバックアップファイルをダウンロードできます。

バックアップファイルの内容は、データベースの標準ダンプファイル(PostgreSQL、MySQL の場合は .sql ファイル、MongoDB の場合はさまざまな .bson ファイル)になります。これらのバックアップファイルは、組み込みのデータベース復元ツール(psqlmongoimport など)を使用して後で復元できます。

自動バックアップ

Zeabur は自動バックアップもサポートしており、現在は設定した時刻に毎日バックアップを行います。

auto backup

「Automatic Backup」を有効にした後、UTC でバックアップ時刻を設定できます。サービスのトラフィックが最も少ない時間帯を選択するのがベストです。横にある「At your local time」のヒントを参考に、この UTC 時刻がローカル時刻でどの時間帯に相当するかを確認できます。

バックアップの保持期間と API 取得方法

Zeabur はバックアップを7日間のみ保持します。この期間を超えたバックアップは自動的に削除されます。より長期間バックアップを保存する必要がある場合は、バックアップファイルをダウンロードして別の場所に保存してください。

現在、Zeabur は独自の Amazon S3 ストレージスペースへのバックアップをまだサポートしていませんが、Zeabur パブリック API を呼び出してバックアップを取得し、お好みのストレージスペースに保存するプログラムを作成できます:

query Backups($environmentId: ObjectID!, $serviceId: ObjectID!) {
  backups(environmentID: $environmentId, serviceID: $serviceId) {
    createdAt
    downloadURL
    status
  }
}

レスポンス例:

{
  "data": {
    "backups": [
      {
        "createdAt": "2025-06-23T16:00:10.864Z",
        "downloadURL": "https://backup.zeabur.com/XXXXXX",
        "status": "SUCCESS"
      }
    ]
  }
}

バックアップファイルのダウンロードリンク(downloadURL)とバックアップ時刻(createdAt)を使用して、バックアップファイルを保存できます。

バックアップの復元

このセクションでは、サービスのバックアップを復元するさまざまな方法について簡単に説明します。

データベース

PostgreSQL

PostgreSQL サービステンプレートページの「バックアップの復元」セクションを参照してください。

MySQL と MariaDB

MySQL サービステンプレートページMariaDB サービステンプレートページの「バックアップの復元」セクションを参照してください。

Redis

Redis RESTORE コマンドを使用してバックアップを復元できます。

Redis サービスの「Command to connect to your Redis」文字列を展開すると、以下のようなものが表示されます:

redis-cli -h <host> -p <port> -a <password>

<host><port><password> を以下のコマンドに挿入します:

cat /path/to/backup.rdb | redis-cli -h <host> -p <port> -a <password> -x RESTORE <key> 0

MongoDB

MongoDB サービスの「Command to connect to your MongoDB」文字列を展開すると、以下のようなものが表示されます:

mongosh "<connection string>"

<connection string> をターミナルにコピーし、mongorestore コマンドを実行してバックアップを復元します:

mongorestore "<connection string>" "<backup directory>"

ボリューム

ボリューム内のデータを復元したい場合は、ファイル管理の方法を参考にして、バックアップファイルをターゲットディレクトリにアップロードして展開できます。