[pgsql-jp: 32829] Re: pg_restoRe: でエラー permission denied for language c
ISHIDA Akio
iakio @ pjam.jpweb.net
2004年 4月 19日 (月) 15:01:54 JST
石田です。
custplus @ leo-net.jp wrote:
> 現在、あるDBをバックアップして違うサーバにリストアしようと思ってます。
>
> だた、リストアした先のDBのオーナーとテーブルのオーナーは元(オリジナル)
> と違うものにしたいと思っています。
> #OSには、postgresでログオンしていると想定。
>
> //バックアップ
> //元DBとテーブルのオーナーは、moto_userとします。
> pg_dump -O -F c db_moto > /tmp/dbmotobak.db
>
> //新しいDBとテーブルオーナー
> createuser -D -A -P new_user
>
> //新しいDB作成
> createdb -E EUC_JP -O ewp_user db_new
>
> //リストア
> pg_restore -U new_user -O -d db_new /tmp/dbmotobak.db
>
> pg_restoreを実行すると、以下のエラーが発生します。
>
> Error>pg_restore: [archiver (db)] could not execute query: ERROR:
> Error>permission denied for language c
>
> どうしてこのようなエラーが出るのでしょうか?
> よろしくご教授のほどお願いします。
db_new に対して moto_user でログインして、C 言語の function を
作ろうとしているからです。
他にも方法はあるかもしれませんが、とりあえず、
pg_restore -U postgres -O -d db_new /tmp/dbmotobak.db
でいいと思います。
--
ISHIDA Akio <iakio @ pjam.jpweb.net/iakio @ mono-space.net>
pgsql-jp メーリングリストの案内