[pgsql-jp: 39671] ダンプしたデータベースをpsql -f で流し込むときのエラー

NASUNO Isao isao.nasuno @ ctc-g.co.jp
2008年 12月 10日 (水) 13:55:52 JST


皆様

那須野と申します。

先日、マシンがクラッシュしてしまい、再構築を余儀なくされました。

PostgreSQL 8.0.3 / PostGIS 1.1.3(確か)で作成されていたデータベースを、
pg_dump <DB> で丸ごとダンプしてあったバックアップを元に、
同じ環境を再構築して復旧しようとしましたが、うまくいかずに困っています。
OSは、WhiteBox4です。

●手順は以下の通りです。
○ダンプ
  プレーンテキストで丸ごとダンプしました。
 データベースには、
    createlang plpgsql DB
  を実行した後、lwpostgis.sql が流し込まれていました。

○復旧
 下記の手順です。
  createdb DB
  createlang plpgsql DB
  createuser username (このDBで作業するユーザ名)
  psql DB -f ダンプファイル

●状況は以下の通りです。

復旧は Postgresql 8.0.3、PostGIS 1.1.7 で行っています。
lwpostgis.sql ファイルの読み込みも問題なくできるようになっています。
ダンプファイルを流し込むと、geometry_analyze() の作成時に
  ----------------------------------------------------------
  ERROR:  could not access file "$libdir/liblwgeom.so.1.0":
  そのようなファイルやディレクトリはありません
  ----------------------------------------------------------
と、エラーが出ます。
liblwgeom.so.1.0 は、確かにありません。
実際、他のPostGIS関数は、全てliblwgeom.so.1.1 を使って作成するように
記述されているのに、この関数だけが1.0を参照しています。

これが原因か分かりませんが、ダンプの流し込みは他のエラーは出ずにある程度進みますが、
一晩おいて翌朝見てみると、最初のほうで止まっています。
エラーも出ず、ただ停止している感じです。

liblwgeom.so.1.0 -> liblwgeom.so.1.1 と、シンボリックリンクを張ると、
エラーは消えます。
しかし、最初のほうで止まってしまうのは変わりありません。

ダンプファイルが大きくどこで止まっているかハッキリしませんが、
空のテーブルが出来上がったあと、中身を入れずに止まっている様子です。

同じ状況に陥ったことのある方がいらしたら、アドバイスいただけないでしょうか。
よろしくお願いいたします。


/那須野



pgsql-jp メーリングリストの案内