3

私は PostgreSQL データベースを使用しており、データベース サーバーを実行しています。

私のPostgreSQL のバージョンは次のとおりです。

postgres=# select version();
                           version
-------------------------------------------------------------
 PostgreSQL 9.2.4, compiled by Visual C++ build 1600, 32-bit
(1 row)

私の要件:

2 日ごとにPostgreSQLScript or a Job-Scheduleデータベースを保持するために実行することはできますか?Back-Up

それを行う方法はありますか?

これを実現するために、スクリプトまたはジョブ スケジューリング ジョブを実行できますか?

PgAgentを使用してそれを行う方法はありますか! 私はPgAdminIIIを使用しています。

4

1 に答える 1

3

ここから撮影

Windows 環境で自動バックアップを実現するには:

1. .pgpass ファイルを作成する

(私は私のpgpass.confと呼びました)そしてそれを安全な場所に置きます。バックアップを実行するスクリプトの下のサブディレクトリにあります。

pgpass には、この形式のホスト アクセス情報が含まれています。

hostname:port:database:username:password

.pgpass ファイルをロックダウンする NTFS アクセス許可を使用して、pg を実行しているユーザーを除くすべてのユーザーに対してこのファイルへのアクセスを無効にします (システム アカウントで pg を実行している場合は、独自のユーザー資格情報を使用するように設定する必要があります)。

2. pg_dumpall を呼び出すスクリプトを作成します。

例えば:

SET PGPASSFILE=C:\foo\bar\PG_BACKUP\PGPASSFILE\pgpass.conf
"C:\Program Files\PostgreSQL\9.2\bin\pg_dumpall.exe" -U postgres_username  > C:\foo\bar\PG_BACKUP\db.out current

最初の行は、pgpass ファイルの場所です。2 行目は、データベース全体をファイルに出力する pg_dumpall コマンドです。C:\foo\bar\PG_BACKUP\db.out

3.スケジュールされたタスクを作成する

コマンドは

C:\Windows\System32\cmd.exe /c "C:\foo\bar\PG_BACKUP\pg_backup.bat"

そしてそれはディレクトリで始まります

C:\foo\bar\PG_BACKUP

Windowsでスケジュールされたタスクを作成する方法に関する良いチュートリアルは次のとおりです。

http://www.makeuseof.com/tag/how-to-automate-windows-programs-on-a-schedule/ .

簡単な検索で、そのようなチュートリアルや情報をたくさん見つけることができます。

于 2013-11-25T10:38:33.913 に答える