忍者ブログ
[135] [134] [133] [132] [131] [130] [129] [128] [127] [126] [125]

DATE : 2024/04/24 (Wed)
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。


DATE : 2006/08/15 (Tue)

GIS 分野に手を出すことになりそうなので、PostgreSQL で地理情報を扱うためのモジュール、PostGIS をインストールしてみました。

ここでは、Windows XP 版でのインストール方法、PostGIS そのもののインストールから、データベース上で PostGIS を扱えるようになるまでをメモします。

インストール方法

PostGIS をインストールするには、以下の方法があります。

PostgreSQL インストーラから

PostgreSQL のインストーラから、PostGIS モジュールの追加を選択できます。Windows 版では MSI 形式のインストーラが提供されているので、PostgreSQL のインストール後でも追加できます。

ただし、PostgreSQL インストーラには古いバージョンの PostGIS が付属しています(例えば、現在の PostGIS の最新バージョンは1.1.3ですが、PostgreSQL 8.4 に付属する PostGIS は1.0.5です)。

PostGIS インストーラから
PostGIS の公式サイトには、最新版の PostGIS インストーラが配布されています。このインストーラからインストールする場合、PostgreSQL 付属の PostGIS は未インストール状態か、もしくはアンインストールしておかなければなりません。

ただ、参考文献によると、Windows XP SP2 上の PostgreSQL 8.1.4 と PostGIS 1.1.3 はインストール中にエラーが発生するなど、相性が良くないそうです。

データベースで地理情報を扱えるようにする

まず、PL/pgSQL 言語をデータベースで扱えるようにします。(「>」はプロンプトです)

> createlang plpgsql <データベース名>

なお、すでにインストールされている場合もあります。

次に、PostGIS オブジェクトや関数をデータベースにインストールします。具体的には、インストールしたいデータベースに対して lwpostgis.sql を実行します。

> psql -f lwpostgis.sql -d <データベース名>

lwpostgis.sql などのファイルは、「<PostgreSQL のホームディレクトリ>\share\contrib」にあります。

実行後、最後にコミットされればインストール成功です。ロールバックされた場合は、インストールが失敗しています。

ちなみに、文字エンコーディングの問題でインストールが失敗した場合は、データベースにログインした後、psql で扱う文字エンコーディングを変更して実行します(psql のコマンドラインオプションで設定する方法もあります)。(「#」は、psql のプロンプトです)

# \encoding SQL_ASCII
# \i lwpostgis.sql

最後に、座標系が定義されたデータを登録します。

> psql -f spatial_ref_sys.sql -d <データベース名>

これも実行後、最後にコミットされればインストール成功です。

これまでの作業が終われば、データベース上で地理情報を扱う準備は終わりです。

参考文献

PR
●この記事にコメントする
お名前
タイトル
文字色
メールアドレス
URL
コメント
パスワード
●この記事へのトラックバック
この記事にトラックバックする:
忍者ブログ [PR]
ブログ内検索
最近の状況
リンク
カレンダー
03 2024/04 05
S M T W T F S
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
使用許諾
最新コメント
(08/15)
(05/04)
(03/06)
(03/04)
(09/25)
最新トラックバック
ブログ内検索
最近の状況
リンク
カレンダー
03 2024/04 05
S M T W T F S
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
使用許諾
最新コメント
(08/15)
(05/04)
(03/06)
(03/04)
(09/25)
最新トラックバック