PostgreSQL Ver8 SETUP
Vine Linux 4.1についてある postgres の設定
インストールするファイル(apt-cache search より)
postgresql - PostgreSQL のクライアントプログラム群およびライブラリ
postgresql-contrib-8.1.5-0vl0 - PostgreSQL と一緒に配布される、寄贈されたソースとバイナリ
postgresql-devel-8.1.5-0vl0 - PostgreSQL の開発用ヘッダファイルとライブラリ群
postgresql-docs-8.1.5-0vl0 - PostgreSQL に関するその他の文書
postgresql-jdbc-8.1.5-0vl0 - PostgreSQL データベースにアクセスする Java プログラムのために必要なファイル群
postgresql-libs-8.1.5-0vl0 - PostgreSQL クライアントに必要な共有ライブラリ
postgresql-pl-8.1.5-0vl0 - PostgreSQL 用の手続き言語 PL
postgresql-ruby-0.7.1-0vl2 - Ruby用のPostgreSQL拡張モジュール
postgresql-server-8.1.5-0vl0 - PostgreSQL サーバを構築・実行するのに必要なプログラム
postgresql-tcl-8.1.5-0vl0 - PostgreSQL の Tcl クライアントライブラリ
-----------------------------------
今回は、「赤色」のプログラムをインストールしていきます。
Postgres8 を rpm でそのまま使った場合、いくつかの設定をしなくてはいけません。
データベースの初期化
postgresユーザになり、 initdbを実行
(いきなり起動した場合はデータベースの初期化をしてくれます。postgresql-8.1.5-0vl0にて確認)
ユーザディレクトリは /var/lib/pgsql です。
設定ファイルは /var/lib/pgsql/data です。
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
各種環境設定(設定したところだけ書き出します)
ネットワーク環境は下記のとおりです。
network 192.168.1.0/24
pg_hba.conf
# IPv4 local connections:
# TYPE DATABASE USER CIDR-ADDRESS METHOD
host all all 127.0.0.1/32 trust
host all all 192.168.1.0/24 trust <-- 追加
---------------------
postgresql.conf
port 5432
文字コード EUC
# - Connection Settings -
listen_addresses = '*'
port = 5432
client_encoding = EUC_JP # actually, defaults to database
# encoding
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
host は利用するネットワークを指定しています。
サンプルに従い、DATABASE/USERはコピーしました。
listen_addresses はVer7まではtcpipとなっていました。
ネットワーク指定をしても良いのですが、全ネットワーク設定として「*」にしました。
portは外部接続するためのポートです。ファイヤーウォールの設定をされている方は
この番号をあけてください。(変更は自由ですが、ほかのサービスとバッティングしないようにしてください)
client_encoding は文字コードを設定します。
デフォルトは、「sql_ascii」で、後からWindowsから接続するときに文字コードが異なり、文字化けをしますのでここで設定しておきます。
ODBCの設定
クライアントをWindowsに選択しました。
ODBCドライバは下記サイトから取得しました
http://www.postgresql.org/ftp/odbc/versions/msi/
今回は、一番下にある最新バージョンをダウンロードしました。
psqlodbc-08_02_0400.zip
ZIPファイルを解凍すると2つのファイルが出てきます。
psqlodbc.msi
upgrade.bat
psqlodbc.msiを実行してインストールしてください。
アップグレードの方は、「upgrade.bat」と思うのですがやっていませんので正確な事はわかりません。
(すみません m(__)m )
インストールが無事に終わるとODBCの設定をします。
「コントロールパネル」->「パフォーマンスとメンテナンス」
->「管理ツール」->「データソース(ODBC) 」
1:ODBCデータソースアドミニストレータ画面から「追加」ボタンを押す。
2:ドライバは「PostgreSQL Unicode」を選択
3:「完了」ボタンを押す
データソース名 | 接続するデータベースに対しての名前です。好みの名前でOKです。 |
説明 | このODBCの説明が書けます |
サーバ名 | 接続するサーバの名前、もしくはIPアドレスを入れます |
データベース名 | 接続するデータベース名を記入します |
ユーザ名 | 接続するときに使うユーザ名です |
パスワード | 接続するときに使うパスワードです。設定していなければ空白でOKです |
「データソース」画面
この画面は「設定1」です。
今回は、デフォルトのままで使用しています。
この画面は「設定2」です。
こちらも、デフォルトのままで使用しています。
<<未解決事項>>
その1
OIDオプションをつけるとAccessは問題ありませんが、なぜかExcelで読み込む時にエラーとなります。
今のところ、理由はわかっていません。
エラーメッセージ
Microsoft Query
ERROR; column database.okd does not exist:
Error while executing the query
その2
「設定2」のところに文字コードを入れて文字化け対策をしようとしたのですが。どうもうまくいかなかったのでやめました。
データベース側をEUCに設定する事によって、文字化けが解消したようです。
その3
サーバ上でサンプルデータベースを作成して、ODBC接続をしたところ、新規レコードが作成できませんでした。
Accessで作ったテーブルをサーバへエクスポートしたら、問題なく新しいレコードの追加ができました。
その4
サーバ上で作ったテーブルにODBCで接続しAccessで閲覧すると、すべて #delete と表示されました。
しかし、サーバ上で確認するとデータは正常に格納されていました。
2007.06.21 Vineのバージョンアップに伴い、postgresのバージョンもアップさせた。
Let's PC の Topに戻る
ホームページのTopに戻る