質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
PostgreSQL

PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。

Q&A

解決済

1回答

4425閲覧

PostgreSQLでDBバックアップのパフォーマンスチューニングをする方法

hanggang

総合スコア31

PostgreSQL

PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。

0グッド

0クリップ

投稿2014/10/28 03:52

デフォルトのプレーンフォーマットでpg_dumpを使っていました。

しかし、少し調べるとpg_dump -Fc | gzip -9 -c > mydumpfile.gzを使って時間とファイルサイズを向上させることが出来ると知りました。

なので、以下のように新しいデータベースを作成しようとしたのですが、

lang

1# create tablespace dbspace location '/path/dbs'; 2# create database testdb tablespace dbspace; 3# alter database testdb set temp_tablespaces = dbspace; 4 5% gunzip mydumpfile.gz # to evaluate restore time without a piped uncompression 6% pg_restore -d dbname mydumpfile # into a new, empty database defined above 7

データベース作成のための復元が12時間もかかり、それは以下の全体像の一部に過ぎません。

lang

1# select pg_size_pretty(pg_database_size('testdb'));

パフォーマンスを向上させるにはどうすればいいでしょうか。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

まず、ディスクセットアップから問題のないIOパフォーマンスを得られているかどうかを確認して下さい。

次にPostgreSQLのインストールが正しいかどうか確認して下さい。

特に以下の点が重要なので、確認してください。
・shared_buffers が正しく設定されていますか
・maintenance_work_mem が復元の最中に増大していますか
・full_page_writes が復元の最中にオフになっていますか
・wal_buffers が復元の最中に16MGに増大していますか
・checkpoint_segments は復元の最中に16のような値に増大していますか
・auto_vacuum は復元の最中に無効になっていますか
・不当なロギングがオンになっていませんか(例えば、各ロギングステートメントが実行されるような)

もし、バージョン8.4以上を使っているならば、平行で復元も試してみて下さい。

投稿2014/10/28 08:28

aviva

総合スコア130

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問