自動postgresバックアップ


20

LinuxでPostgresデータベースを毎日自動的にバックアップする最良の方法は何ですか?

回答:


11

次のpg_dumpように使用できます。

$ pg_dump -h db_host -U user_name db_name > dump_file.sql

.pgpass接続にパスワードが必要な場合に使用されるパスワードを含むファイルを設定することをまず考えてください。このファイルには、次の形式の行が必要です。

hostname:port:database:username:password

また、最初の4つのフィールドはそれぞれ、リテラル値、または*であり、これはすべてに一致します。例:*:*:*:postgres:pg_password

この.pgpassファイルはホームディレクトリ〜/に存在する必要があり、そのアクセス許可はワールドまたはグループへのアクセスを禁止する必要があります。コマンドでこれを達成してください chmod 0600 ~/.pgpass


毎日自動的にバックアップされますか?
アヌジパテル

@indyaah:いいえ、これをcron(または同様の)から毎日実行する必要があります。
ビル・ワイス

12

cronからpg_dumpallを実行します。


7
pg_dumpallは、グローバルデータベースオブジェクトをバックアップするため、他の回答よりも優れています。(例:ユーザーなど)DBを完全に回復するためにこれらが必要になります。これらが多数ある場合は、再作成するのは簡単ではありません。ただし、pg_dumpallはすべてのインスタンスをバックアップするため、複数のデータベースクラスター内の単一のデータベースインスタンスを単純にバックアップしたい場合、pg_dumpallは使い物になりません。だから...ほとんどの技術Q&Aと同様に、それは依存します。
ケビンレイ2009

1
私は「データベース」と「データベースサーバー」を融合する傾向がありますが、これは良い例です。私は、ポスターが全体をバックアップしたいと考えていたのは良い点です。
ビルヴァイス

6

AutoPostgreSQLBackupを試してください。単一のスクリプトファイルであり、ニーズに合わせて簡単に構成でき、毎日、毎週、毎月のスケジューリング、電子メールごとのログ、ログファイルまたはstdoutなどを実行できます。


また、AutoPostgreSQLBackupを使用していますが、非常にうまく機能しています;-)
Matthieu

4

適度に小さいデータベースで、バックアップの要件が1日1回程度であれば、cronからpg_dumpを実行してローカルファイルにダンプし、マシン上のファイルをバックアップするために必要なものを使用してダンプをアーカイブします。 。





1

これは、各データベースを個別にバックアップするだけでなく、しばしば忘れられるが重要なPostgreSQL GLOBALSとユーザーログイン情報をバックアップするスクリプトです。

これの重要性は、pg_dumpallが提供しない圧縮とpg_dumpが無視する忘れられたデータを利用することです。

これには、http: //wiki.postgresql.org/wiki/Pgpassで説明されているpgpassまたは同様のセットアップが必要です

これはOSXのセットアップですが、プログラムパスを変更するだけで正常に機能します。

/ sqlbackupsへのバックアップスクリプトはディレクトリサイズ/ディレクトリを返し、失敗した場合にゼロ以外のステータスを返すブレークポイントを持っています。pgAgentと組み合わせて使用​​して、毎日のバックアップを行いました。

スクリプトが編集されました。ごめんなさい:(


1

あなたは簡単に持つことができるのに、なぜ毎日のバックアップで落ち着くポイントインタイムリカバリバーテンダーを


モデレーターに決定を任せますが、5年前の質問を復活させて商用製品を差し込むことは、ここでは悪い形だと思います。
グレント14年

ehm、それはオープンソースです:sourceforge.net/projects/pgbarman/files
ジョヴァンニトラルド14年

あなたは正しい、私は間違ったことをグーグルで調べた。私の主な関心事は、とにかく、5年後にユーザーが実際に尋ねたものではない答えを提案することでした。ただし、他の回答を読んだ後も、同様のバックアップソリューションを提案しているようですので、それほど悪くはないと思います。私のフラグはおそらく拒否され、1日と呼ぶことにします:D
gparent 14年

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.