PostgreSQL データベースのバックアップを作成する方法はいくつかありますが、 ジオデータベースの格納に使用する PostgreSQL データベースの場合は、pg_dump を使用してアーカイブ ファイルを作成し、データベースを削除してから同じ名前でデータベースを再作成し、pg_restore を使用して、再作成したデータベースに復元する方法をお勧めします。
アーカイブ ファイルから復元する場合は、スキーマを復元する順序を指定できます。PostgreSQL のジオデータベースでは、一定の順序でスキーマを復元する必要があります。
PostgreSQL のジオデータベースのバックアップを作成するには、スーパーユーザーとして pg_dump コマンドを MS-DOS またはシェル コマンド プロンプトから実行します。これで、データベースの再作成に使用できるアーカイブ ファイルが作成されます。
pg_dump –U <superuser_name> –F c <database_name> > <dump_file_name>
たとえば、次のように指定します。
pg_dump –U postgres –F c mypgdb > mypgdb1031.dump
前の例では、ダンプ ファイルはコマンドを実行したディレクトリに保存されます。別の場所を指定するには、-f オプションでディレクトリの場所およびファイル名を指定します。
PostgreSQL のバックアップと復元に関するドキュメントに目を通すことは重要ですが、pg_dump コマンドを使用する際には、次の点に注意する必要があります。
- pg_dump コマンドでバックアップを作成できるのは一度に 1 つのデータベースだけであり、ロールと表領域に関する情報は含まれません。
- pg_dump の実行中は、排他ロックを必要とする操作だけがブロックされます。このため、pg_dump の実行中にデータベースに加えられた更新はアーカイブ ファイルに反映されません。
- PostGIS がすでにインストールされている状況で、geometry 型または geography 型格納を使用する場合は、所有している PostGIS のバージョンによってバックアップ作成と復元の手順が異なることがあります。データベースのバックアップ作成と復元に関する PostGIS のドキュメントに必ず目を通しておいてください。
あらゆるバックアップおよび復元計画と同様に、手順をテストして、バックアップと復元が正しく機能することを確認してください。