- - PR -
Cygwinを使用してPostgreSQLの設定につきまして
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2004-05-03 14:20
.
. . DEFPOSTOPTS=$PGDATA/postmaster.opts.default POSTOPTSFILE=$PGDATA/postmaster.opts PIDFILE=$PGDATA/postmaster.pid . . . if [ "$op" = "start" -o "$op" = "restart" ];then oldpid="" if [ -f "$PIDFILE" ];then echo "$CMDNAME: Another postmaster may be running. Trying to start postmaster anyway." 1>&2 oldpid=`sed -n 1p $PIDFILE` fi . . . pg_ctl の中身はこんなシェルですから。 $PIDFILE とは先ず何を指すか、辿っていけば原因が postmaster.pid やとわかりますな。 | ||||
|
投稿日時: 2004-05-03 14:33
エラーメッセージを訳すと: 他のpostmasterが稼働しているかも知れません。とにかくpostmasterの起動を試みます。 postmasterを起動できませんでした。 ログ出力を調べてください。 ということです。なので、まずはログを調べるべきです。 で、たぶん次のようになっているはずです。 FATAL: pre-existing shared memory block (key 5432001, ID 5888) is still in use HINT: If you're sure there are no old server processes still running, remove the shared memory block with the command "ipcrm", or just delete the file "/usr/share/pgsql/data/postmaster.pid". これを訳すと: 致命的なエラー: すでに存在する共有メモリブロック (key 5432001, ID 5888) がまだ使用中です。 ヒント: もし、古いサーバプロセスが稼働していないと確信できるなら、 共有メモリブロックをipcrmコマンドで削除、または "/usr/share/pgsql/data/postmaster.pid" ファイルを消去してください。 なので、ipcrmコマンドで該当の共有メモリブロックを消去するか、 "/usr/share/pgsql/data/postmaster.pid" ファイルを消せばよいでしょう。 なお、PostgreSQLを止めるには、 pg_ctl stop を使うか、 postmasterに対して、SIGTERM, SIGINT (=ctrl-C), SIGQUITを発行します。 マニュアルの該当個所はこちら。 pg_ctl http://www.postgresql.jp/document/pg74doc/html/app-pg-ctl.html postmaster http://www.postgresql.jp/document/pg74doc/html/app-postmaster.html サーバーのシャットダウン http://www.postgresql.jp/document/pg74doc/html/postmaster-shutdown.html もし他に疑問点が出たら次のページも参考になるでしょう。 PostgreSQL FAQ in Japanese http://www.postgresql.jp/subcommittee/jpugdoc/faq-japanese.html また、CygwinのPostgreSQLパッケージに特有の事項は次のファイルも参照して 見てください。 /usr/share/doc/Cygwin/postgresql-7.4.README | ||||
|
投稿日時: 2004-05-03 15:36
コブラさん、ちいにぃさん、アドバイスありがとうございます。
pidファイルを一旦削除してから、再度コマンドを入力しましたら 上手く実行されました。 もう少し色々調べながらポスグレを使って行きたいと思います。 大変参考になりました。 ありがとうございました。 | ||||
|
投稿日時: 2004-05-03 15:39
うまくいって良かったですね。
ところで、koji_kojiさんに1つ質問があります。
CygwinのPostgreSQLについて書かれている書籍は少ないと思うので、 この書籍について次のことを知りたいのですが、よろしいでしょうか? ・この「書籍」の名前 ・この書籍で CygwinのPostgreSQLについて触れている個所があるかどうか ・この書籍で、Cygwinのipc-daemon2について触れている個所があるかどうか というのも、Cygwinのipc-daemon2 はたぶん Cygwin 1.5.X に登場したもので、 2003年7月以後に使われているもの思います。(それまでは別途CygUtilsを ダウンロードし、そのなかのipc-daemonを使った) このことが書かれている書籍やWebは少ないはずですので気になっています。 例えば以下の既存の書籍では、発売時期から見てもipc-daemon2のことは 記されていないと思いますので。 ・CygwinでPostgreSQLをWindowsで使う本 (2003.07発行) ・WindowsユーザのためのPostgreSQL導入活用ガイド(2002.11発行) [修正:誤字修正] [ メッセージ編集済み 編集者: ちいにぃ 編集日時 2004-05-03 15:50 ] | ||||
|
投稿日時: 2004-05-03 15:56
ちいにぃさん、色々とありがとうございます。
書籍名:Java WORLD for Beginners 出版社:IDG 価格 :\1,680 です。 実際に CygwinのPostgreSQLとCygwinのipc-daemon2について 触れている箇所は、ほとんどないと思います。 P.038にWebアプリ開発の環境設定の箇所で 『データベース環境のセットアップ』と題して、 1ページだけ以下の手順で、記載されています。 ・CygwinとPostgreSQLのインストール ・Cygpicの起動 ・DBの作成 ・PostgreSQLの起動/終了方法 これくらいしか掲載されていないような感じです。 また、先の章で『JDBCによるデータベース・アクセス』にて JDBCの使用方法とSQL文を用いたデータ取得の仕方が掲載されているだけです。 因みに、CygwinとCygpicとPostgreSQLは、本書付録のCDから取得しました。 | ||||
|
投稿日時: 2004-05-03 20:35
http://direct.idg.co.jp/detail_1.msp?id=1033&class=10005&n=2 の、[特集2]7日間でマスターする! Webアプリケーション開発のキホン かな? なるほど、雑誌やムックならipc-daemon2について書かれているんですね。 ありがとうございました。参考になりました。 | ||||
|
投稿日時: 2004-06-12 16:24
Cygwin版のpostgreql-7.4.2-1パッケージが 2004/06/11 に出ましたので、
注意点を書いておきます。 設定手順はこれまでどおり、postgresqlパッケージの /usr/share/doc/Cygwin/postgresql-X.X.X.README に記載されています。 (今回のファイル名は postgresql-7.4.2.README) このバージョンでは、cygipc (ipc-daemon2) は使えません。 かわりに、cygwinパッケージに入っている cygserver を使います。 cygserverをpostgresqlに使わせるには、環境変数CYGWINに'server'って単語を 追加する必要があります。postgresqlをサービスとして動作させるなら、 システム環境変数で定義しておくと良いでしょう。 |