Home
> PostgreSQL/PostGISのインストール >
Shapefileの投入と表示確認
|
PostgreSQL/PostGISのインストール |
update:2007/01/28 |
- このページで解説している環境
- WindowsXP SP2
- ダウンロードするバージョン
- PostgreSQL 8.2.1 ※2007/1/21現在の最新バージョン
このページはPostgreSQL8.2.1の解説となります。バージョンの違いによって、各種設定方法が異なる場合があります。
- ダウンロード前の注意点
- ここではWindowsXP上でインストールする方法を説明してます。LinuxやCygwin上での構築方法は他のサイトを参照してください。(WinXP home、Win2000 pro 以外のバージョンでの動作確認はしてません)
- 他のバージョンのPostgreSQLと併用した運用は不可能(Cygwinも含め)です。既にPostgreSQLをインストールしている方は、アンインストールしてからのダウンロード してください。
- メニュー
■ PostgreSQL/PostGISのダウンロードとインストール
- 日本PostgreSQLユーザー会から Windows版の postgresql-8.2.1-1-ja.zip をダウンロードします
- postgresql-8.2.1-1-ja.zipを解凍し、そのフォルダを空け、postgresql-8.2-ja.msi をダブルクリックし、インストールを展開します
※Cygwinを環境変数に設定されている場合はメッセージが出るので、環境変数のPATHからCygwinの設定を除いてください。
- PostgreSQLインストールウィザードへようこそ 次へ
- インストールにおける注意事項 次へ
- インストールオプション
。その他のオプションは任意です
「国際化言語のサポート」と「PostGIS 空間の拡張」を選択し『全体の機能は、ローカルなハードディスクドライブにインストールをされます』を選択し、次へ
- サービス構成
「サービスのインストール」にチェックを入れる
「サービス名」 「アカウント名」 「ドメイン名」を指定する(そのままで良い)
「パスワード」を入力し、同じパスワードを「パスワードの確認」に入力する。
※次のようなエラーメッセージで先に進めない場合は、既にユーザ名が存在しているため、削除する必要があります。
アカウントエラーです「無効なユーザー名です:ログオン失敗: ユーザー名を認識できないか、またはパスワードが間違っています。」
- ユーザ名(postgres)を削除する
コマンドプロンプトを開き、次のとおりユーザーアカウントを削除する
C:\Documents and Settings\Owner>NET USER
(ユーザ名) のユーザー アカウント
-------------------------------------------------------------------------------
Administrator ASPNET Guest
HelpAssistant Owner postgres
SUPPORT_xxxxx SUPPORT_xxxxx
コマンドは正常に終了しました。
C:\Documents and Settings\Owner>NET USER /DELETE postgres
コマンドは正常に終了しました。
- アカウントの作成
PostgreSQLユーザーがまだ作成されていない場合は「はい」を押す。
- 安易なパスワードと判断された場合は「ランダムパスワードを設定しますか?」と尋ねられる。
ランダムパスワード(自動生成されたパスワード)を設定しない場合は「いいえ」を押します。
「はい」にした場合は、必ずパスワードを控えておく必要があります。あとあと面倒なので「いいえ」を推奨します。
- 成功 「OK」をクリック
- データベースクラスタの初期化
「データーベースクラスタの初期化」チェックあり 「ポート番号」5432 「アドレス」:チェックなし
「ロケール」:C※ 「エンコーディング」:EUC_JP※ 「スーパーユーザー名」:postgres すべてそのままで「パスワード」を入力し、同じパスワードを「パスワードの確認」に入力する。 ここでのパスワードはPostgreSQLを操作していく上で頻繁に使用するものなので必ず覚えておく。
※ロケールの選択で、"japanese"がありますが、ソート類関数などが正常に作動しませんので、必ず "C"を選択して下さい。MapServerのアプリケーション p.mapper も、ロケール"japanese"の設定では作動しません。
※PostgreSQLの文字コードは"EUC-JP"となります(UTF-8でも可能です)。Windowsで使用している"Shift-JIS"の設定はありません。その他の文字コード "Unicode"などもWindowsでは正しく動作されないようです。
- 手続き言語を可能にする「PL/pgsql 」にチェックを入れる
- 貢献モジュールを可能にする(デフォルトでは「Adminpack」にチェックが入っている)そのまま「次へ」をクリックする
- インストールの準備ができました
- インストール中
- インストールが完了しました。「終わる」をクリック
これで、インストールが完了しました
■文字コードの設定 PostgreSQLの文字コードは、デフォルトでEUC-JPの設定となっています。このため、自分のサーバで作動させている文字コードに設定を合わせる必要があります。Windows上で作動させる場合は、Shift_JISの設定にします。
※バージョン8.2.1-1 では、この設定が正しく反映されていない模様ですが、一応sjisにしておいた方が無難と思われます。
- 文字コードの設定
- スタート > すべてのプログラム > PostgreSQL 8.2 > 構成ファイル > postgresql.confの編集をクリックします
- 起動したpgAdmin3 バックエンド構成エディタの中の "client_encoding"をダブルクリックします
- client_encoding構成の設定で、可能にチェックを入れ、値をsql_asciiからsjisに変更し、OKをクリックします。
- pgAdmin3 バックエンド構成エディタを保存して終了します
- クライアントエンコードを有効にするために、PostgreSQLを再起動します
スタート > コントロールパネル > 管理ツール > サービス > PostgreSQL Database Server 8.2を選択し、サービスの再起動をクリックします
■ 動作確認 ▼ データーベースサーバが動いていることを以下のようにコマンドラインから確認する。
- コマンドプロンプトで、カレントディレクトリを PostgreSQLをインストールしたディレクトリ下のbinに移動する
C:\>cd \"Program Files"\PostgreSQL\8.2\bin
C:\Program Files\PostgreSQL\8.0\bin>
- データーベースを作成する
※ここではtestというデーターベース
C:\Program Files\PostgreSQL\8.2\bin>createdb -U postgres test
Password:パスワードを入力する(画面には表示されない)
CREATE DATABASE
データーベースにアクセスする ※ここではtestというデーターベース
C:\Program Files\PostgreSQL\8.2\bin>psql -U postgres -h localhost test
Password for user postgres::パスワードを入力する(画面には表示されない)
以下のメッセージが出てSQLコマンドの実行が可能となる
Type: \copyright for distribution terms
\h for help with SQL commands
\? for help with psql commands
\g or terminate with semicolon to execute query
\q to quit
test=#
- テスト用テーブルの作成
※ここでは、addrというテーブルで、name/addr/telnoという3つの列を作成
test=# create table addrbook (name varchar(50),addr varchar(50), telno varchar(50));
CREATE TABLE
- テストデータの入力
※ここでは、「'Takuya','大阪府大阪市','090-1234-5678'」と「'Misaki','東京都港区','090-1111-9999'」という2つのデーター
test=# insert into addrbook (name,addr,telno) values ('Takuya','大阪府大阪市','090-1234-5678');
INSERT 0 1
test=# insert into addrbook (name,addr,telno) values ('Misaki','東京都港区','090-1111-9999');
INSERT 0 1
テストデーターの表示 ※先ほど作成した addr を表示させると、入力したデーターが表示される
test=# select * from addrbook;
name | addr | telno
---------------+---------------+-------------------
Takuya | 大阪府大阪市 | 090-1234-5678
Misaki | 東京都港区 | 090-1111-9999
(2 行)
- これで動作確認が完了。PostgreSQLコマンド(\q)を終了する。
test=# \q
■ PHPの設定
- php.ini ファイルの extension=php_pgsql.dll をアンコメントする(先頭の;を削除する)
- Copyright © 2007 Yaskey All Rights Reserved. -