SAK 図書館
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 編資料