プロが教えるわが家の防犯対策術!

こんにちは。
PostgreSQL8.1.10を使っています。
pg_dumpでバックアップしたデータをpg_restoreでリストアするときに、エラーと警告が出てしまいます。
$ pg_dump -F c mydb > db.dump
$ dropdb mydb
$ pg_restore -C -d postgres db.dump
pg_restore: [アーカイバ(db)] TOC処理中にエラーがありました:
pg_restore: [アーカイバ(db)] TOCエントリ1514; 0 0 COMMENT SCHEMA public postgresのエラーです
pg_restore: [アーカイバ(db)] could not execute query: ERROR: スキーマpublicの所有者でなければなりません
Command was:
COMMENT ON SCHEMA public IS 'Standard public schema';
pg_restore: WARNING: 権限を取り上げられませんでした
pg_restore: WARNING: 権限を取り上げられませんでした
pg_restore: WARNING: 権限は付与されませんでした
pg_restore: WARNING: 権限は付与されませんでした
警告: リストアにてエラーを無視しました: 1

結果を確認した限りではリストアはされているようなのですが気になります。
このエラーはどういった理由で発生しているのでしょうか。
エラーを出さなくする方法はあるのでしょうか。
無視していいものならそれでも構わないのですが、理由は知っておきたいです。

A 回答 (1件)

(バックアップファイルを展開しTOCエントリファイル1514行以降に


必要な事をしていないと思えば無視して構わないとは思います)

pg_resotre -CでDBも作成しようとしていると思いますが
postgresのDBが存在しているか
postgres(DB)を作成した時の所有者がmydbと異なっているか
またはpg_dumpを旧バージョン(8.1よりまえ)の物を使用しているか
他は不明
    • good
    • 1
この回答へのお礼

ありがとうございます。
どうやら、バックアップの際に、publicなスキーマの情報も一緒にバックアップしてしまった結果、リストア時に戻せなくて困っているようです。

pg_restoreに-U posgresをつけて実行したところ、エラーも警告も出なくなりました。

お礼日時:2008/04/03 11:47

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す