heroku データベースのバックアップを自動化(スケジュール)するには(2015-05現在)

1. 参考にしたサイト

Heroku PGBackups
旧PGBackups

2. 環境

2-1. Windows 8 Pro 64bit

2-2. heroku toolbelt

https://toolbelt.heroku.com/

2-3. railsinstaller-3.1.0.exe

3. 操作に必要なアドオンは必要なくなりました。

2015-05現在、add-onとしてのPG Backupsは非推奨となったそうです。
詳しくはhttps://devcenter.heroku.com/articles/pgbackups

クライアントコマンドは、HerokuのPostgresに標準で組み込まれました。

コマンドが変わったようです
情報

3-1. 新コマンドと旧コマンドのマッピングはこちら

マッピング

4. 実践

4-1. herokuからデータベース名を取得する

heroku config はアプリケーションの設定を一覧表示するコマンドです。
HEROKU_POSTGRES_XXX_URLの値は Postgres にアクセスするために必要な情報です。
以下のフォーマットになっています。

4-2. 自動バックアップをスケジュールす Scheduling backups

定期的な自動バックアップをスケジュールすることができます。
これらは、指定されたデータベースに対して毎日実行されます。

1) 実行結果

4-3. バックアップ状態を確認する Checking Backup Status

作成済のバックアップを確認する

4-4. スケジュールを止めるには To stop regular backups, use unschedule:

4-5. スケジュールを確認するには To view current schedules for your app, use:

5. 実践・他

5-1. 使われている行数確認

5-2. バックアップを手動で作成する Creating a backup

5-3. バックアップファイルをダウンロードするには Downloading your backups

バックアップのURLを作成します。HerokuのPostgresの外にデータをエクスポートする場合に便利です。

このURLをクリックしてダウンロードします。
10分後に期限切れになります。

存在しないバックアップファイルを指定すると

5-4. 特定のバックアップに関する詳細な情報を取得するには、infoコマンドを使用します。

5-5. バックアップを削除するには Deleting a backup

5-6. バックアップからリストアするには Restoring a backup

1) 通常

DATABASE_URL はそのまま入力します。

2) 他のアプリケーションのバックアップからもリストアできます

3) 公開URLに置いたファイルからもリストアできます

$ heroku pg:backups restore ‘https://s3.amazonaws.com/me/items/mydb.dump’ DATABASE -a sushi

コメントを残す