#pragma section-numbers off http://www.postgresql.org/ [[BR]] http://www.jp.postgresql.org/ (ミラー)[[BR]] http://www.postgresql.jp/ [http://www.postgresql.jp/document/pg721doc/index.html PostgreSQL 7.2.x 付属ドキュメント] http://developer.apple.com/internet/macosx/postgres.html http://www.macdevcenter.com/pub/a/mac/2002/06/07/postgresql.html http://www.entropy.ch/software/macosx/postgresql/ [[BR]] http://www.serverlogistics.com/downloads-jag.php [[BR]] を利用するのが簡易です。 ["Fink/PostgreSQL"] ["cygwin+postgresql"] [http://hp.vector.co.jp/authors/VA023283/PostgreSQL.html Windows-Nativeサーバー&クライアントパッケージ] ["SQL"] ["/psqlコマンド"] [http://itpro.nikkeibp.co.jp/article/COLUMN/20060530/239359/ 【PostgreSQLウォッチ】第27回 SQLインジェクション脆弱性を修正,日本語ユーザーに大きな影響:ITpro] インストール前にマニュアルはローカルに保存して常に参照できるようにしておくと便利。 # これはマニュアルぐらい読めという意味です :-? = ソースからのインストール = http://www.postgresql.jp/PostgreSQL/download.html のどれかより最新を取得します。解説に利用しているのはv7.3.1ですが他のバージョンでもあまり変化ありません。 finkを持っているなら {{{ fink install readline }}} しておくと便利です。 {{{ ./configure でよいがぼくは以下のようにコンパイルしている。 ./configure --with-includes=/sw/include/ --with-libraries=/sw/lib --with-python --with-java }}} http://www.omnigroup.com/mailman/archive/macosx-dev/2002-April/025954.html http://conferences.oreillynet.com/presentations/macosx02/bjepson-databases.doc = 設定 = 最初にPostgresのスーパーユーザを作成しておく。この時パスワード設定をするなどといったアホな事をしてはいけない。 所有者の変更 {{{ sudo chown -R pgsql /usr/local/pgsql/ }}} データベース初期化 {{{ sudo -u pgsql initdb -D /usr/local/pgsql/data -E EUC_JP }}} 起動方法は各種あります。 {{{ sudo -u pgsql /usr/local/bin/postmaster -i -D /usr/local/pgsql/data >>| ログの位置 2>&1 & sudo -u pgsql /usr/local/bin/postmaster -D /usr/local/pgsql/data sudo -u pgsql /usr/local/bin/pg_ctl -D /usr/local/pgsql/data -l logfile start }}} 停止方法 {{{ sudo -u pgsql /usr/local/bin/pg_ctl -D /usr/local/pgsql/data -l logfile stop }}} データベースユーザ作成 {{{ sudo -u pgsql createuser testuser Shall the new user be allowed to create databases? (y/n) y Shall the new user be allowed to create more new users? (y/n) n CREATE USER }}} テスト用データベース作成 {{{ createdb --username testuser test CREATE DATABASE }}} データベースへの接続 {{{ psql test testuser }}} = プログラムからの利用Java編 = {{{ ln -s /usr/local/pgsql/share/java/postgresql.jar /Library/Java/Extensions/ }}} http://www.entropy.ch/software/macosx/postgresql/TestPostgreSQL.java を取得してくる。接続先データベース名および接続ユーザ名の変更を行いコンパイル このままでは実行不能なので設定ファイルを変更。セキュリティを下げる事になるので十分に注意する事。 設定ファイルを変更する場合は一旦データベースを停止しておく事。 {{{ sudo -u pgsql vi data/postgresql.conf tcpip_socket = true }}} {{{ sudo -u pgsql vi data/pg_hba.conf 一番末尾にいく Shift g host all 192.168.0.0 255.255.255.0 trust }}} この場合CLASS Cの{{{Lan内部}}}からの接続を全て許可してしまう。 実際の設定ではもっと細かい設定が必要だが、ぼくの場合は数台から接続するし、外部に出していないので今回はこの設定でいく。 データベース再起動を行う。 先ほどのプログラムを実行して日付けと時間が表示されれば{{{問題}}}なし。 = SSHを利用した安全な接続 = ["SSH"]の設定を行なっておく。 postgresql.conf {{{ tcpip_socket = true }}} もしくはiオプションを付加して起動しておく。 クライアント側でのコマンド {{{ ssh hostname -L 4444:hostname:5432 psql -h localhost -p 3333 dbname }}} 4444は任意の数字でよい。 詳細はマニュアル「SSHトンネルを使った安全なTCP/IP接続」の項を参照する事。 毎回設定していると面倒なので {{{~/.ssh/config}}}に以下の設定をする {{{ Host hostname LocalForward 4444 localhost:5432 }}} これでつねに4444で安全に5432につながる。 = PL/pgSQL = [http://www.sobl.org/traducciones/postgresql-develdoc/index.html PL/pgSQL - SQL Procedural Language] = 参考サイト = [http://www2b.biglobe.ne.jp/~caco/pgpage/index.html PostgreSQL information page] ---- CategoryDatabase