SAK 図書館

SAK Streets メインストリート 図書館・カフェ 一覧 SAK Streets 検索
| VB | SQL | Perl | PHP | ASP | JSP | C | PC | HP | FAQ | フリーソフト |

PostgreSQL 7.2.3(postgresql-7.2.3.tar.gz)、JDBC pgjdbc2.jar インストール

PostgreSQL の SQL 検証をしていたら、7.0.2 では、cross join しか使えない
ことが判明。(^^;
で、なんとか PostgreSQL 7.2.3(postgresql-7.2.3.tar.gz) をインストールし
てみた。

■Cygwin B20、Cygwin 2.05b でのコンパイル

  ・Cygwin B20 で PostgreSQL 7.2.3 をコンパイルするとエラーが発生した。
    仕方なく、Cygwin 2.05b をインストールして挑戦した。
    ところが、かなり試行錯誤したのだが、cygipc 関係のエラーで、どうして
    もコンパイルできない。(^^;
    それぞれのバージョンの組み合わせなんだろうか。それとも cygipc の環境
    設定にミスがあるのだろうか...
    徹夜するも解決できず、あやしい手段に走る。(^^;

  ・Cygwin B20 の /cygnus/usr/include/w32api/ として、最新版 Cygwin の
    w32api/ をコピーする。

■PostgreSQL(postgresql-7.0.2.tar.gz) インストール

  ・postgresql-7.2.3.tar.gz を /cygnus/ にコピー後、次のようにする。
    (以下、あやしい手段である。) (^^;

cd /usr/src/pgsql
tar -zxf /postgresql-7.2.3.tar.gz
cd /usr/src/pgsql/postgresql-7.2.3
./configure --enable-multibyte=EUC_JP

  ・正常にコンフィグレーションが完了すると、次のように終了する。

...
...
...
creating src/Makefile.global
creating src/backend/port/Makefile
creating src/include/pg_config.h
linking ./src/backend/port/dynloader/win.c to src/backend/port/dynloader.c
linking ./src/backend/port/dynloader/win.h to src/include/dynloader.h
linking ./src/include/port/win.h to src/include/pg_config_os.h
linking ./src/makefiles/Makefile.win to src/Makefile.port
linking ./src/backend/port/tas/dummy.s to src/backend/port/tas.s

  ・次のようにコンパイルすると、エラーが発生した。

make

...
...
...
make[4]: *** [excid.o] Error 1
make[3]: *** [error-recursive] Error 2
make[2]: *** [utils-recursive] Error 2
make[1]: *** [all] Error 2
make: *** [all] Error 2

  ・エラーは、excid.o と execute.o で発生する。
    最新版 Cygwin でのコンパイル結果を見ると、cygipc でエラーになってい
    るものの この二つのオブジェクトはコンパイル出来ていることを発見。
    そこで、Cygwin B20 に次のようにコピーした。

/usr/src/pgsql/postgresql-7.2.3/src/backend/utils/error/excid.o
/usr/src/pgsql/postgresql-7.2.3/src/interfaces/ecpg/lib/execute.o

  ・excid.o、execute.o コピー後に再 make する。

make

  ・正常にコンパイルできると、次のように終了する。

...
...
All of PostgreSQL successfully made. Ready to install.

  ・旧版 /usr/local/pgsql/ のフォルダ名を pgsql_old/ に変更する。
    (支障が発生すれば、旧版を使おう作戦。) (^^;

  ・make install で /usr/local/pgsql/ に新版をインストールする。

make install

  ・インストールが正常に終了すれば、
    /usr/local/pgsql/lib/pq.dll → /usr/local/pgsql/bin/pq.dll
    とコピーする。

■PostgreSQL データベース初期化

  ・次のように入力する。

initdb

■後始末

  ・以上が正常に終了すれば、/ の次のファイルは不要である。

  postgresql-7.2.3.tar.gz

■JDBC ドライバ pgjdbc2.jar インストール

  ・ODBC や JDBC は、現行のものでも基本動作はしたが、JDBC ドライバについ
    ては不安なので、pgjdbc2.jar をインストールした。
    pgjdbc2.jar については、JDBC ドライバの make もうまくいかず、ダウン
    ロードしてきた。(Servlet や JSP のソースの修正は不要であった。)

  ・JDBC ドライバ pgjdbc2.jar のインストール先は、次のようにした。

c:/cygnus/jakarta-tomcat-3.3.1/webapps/sak/WEB-INF/lib/pgjdbc2.jar

  ・CLASSPATH は、次のようにした。
    尚、Cygwin B20 では、「"」で囲まないと「;」でエラーになる。
    また、普通のパスは、Cygwin B20 では「:」で区切るが、CLASSPATH は、
    DOS と同じく「;」でかつ、「c:/...」のようにシステムパスから指定する
    必要がある。

export CLASSPATH=".;c:/cygnus/jakarta-tomcat-3.3.1/lib/common/servlet.jar;c:/cygnus/jakarta-tomcat-3.3.1/webapps/sak/WEB-INF/lib/pgjdbc2.jar"

■PostgreSQL 起動、終了

  ・PostgreSQL の起動、終了は、旧版と同じで問題ないようである。
    但し、DB 構造がかなり異なっているため、Interactive PostgreSQL(ipgsql)
    は正常に使えなかった。
    PostgreSQL 編3 - ipc-daemon 起動、PostgreSQL 起動、psql 起動、ipgsql

■PostgreSQL 編、JAVA Servlet、JSP 編資料
■MySQL 編資料
■SQL 基礎編資料
■SQL 基礎実地編資料
■SQL チューニング編資料
■Oracle PL/SQL 編資料
| VB | SQL | Perl | PHP | ASP | JSP | C | PC | HP | FAQ | フリーソフト |

SAK Streets メインストリート 図書館・カフェ 一覧 SAK Streets 検索



Copyright (C) 1999-2024 Y.SAK