[pgsql-jp: 28084] Cygwinsrvで登録したWinNTのサービス開始時のエラーについて
Tomohiro Nakagami
t-naka @ gray.plala.or.jp
2002年 11月 26日 (火) 23:34:53 JST
中神と申します。
MLの記事はいつも参考にさせてもらっています。
長文失礼します。
題記の件ですが、WindowsNT上のCygwin1.3.10でPostgreSQL7.2.1
+ cygipc1.11-1 をCygwinsrvでサービスに登録してテストしていました。
しかし、Cygwinのセットアップのバージョンを途中で換えてしまい
PostgreSQLは正常に稼働していたのですが、Cygwinのセットアップ
を起動するとエラーが表示されるようになってしまったため、
Cygwinから全て入れ直そうと思い実施しました。
すると、PostgreSQLがCygwinのコンソールからは起動するものの
サービスとしてはサービス開始時に、
"エラー2140 WindowsNT の内部エラーが発生しました。"
と表示され起動しなくなってしまいました。
下記に作業内容を書きますので問題点のご指摘、確認すべき事等
ご教授願います。
・行ったこと
1.稼働中のサービスの停止
コントロールパネルのサービスでpostmasterとipc-daemon停止。
cygwinコンソール上で、
sygrunsrv --remove postmaster でサービスの登録削除。
ipc-daemon --remove--as--service でサービスの登録削除。
2.データベースディレクトリをまるごとバックアップ
/usr/share/postgresql/data
3.Cygwinの削除
インストールしたディレクトリ以下を全て削除し、レジストリの
"Cygnus Solutions"以下を削除。
(この後念のため再起動)
4.Cygwinセットアップ2.249.2.5にて再セットアップ(Cygwin1.3.16)
標準状態 + PostgreSQL7.2.3-2 + cygrunsrv0.95-1 + cygipc1.13-2
5.バックアップしたデータベースディレクトリを戻す
/usr/share/postgresql/data
5.ipc-daemonのサービス登録と開始
cygwinコンソール上でipc-daemon --install-as-serviceを行い、
コントロールパネルのサービスで"Cygwin ipc-daemon"サービス開始。
6.PostgreSQLのテスト
cygwinコンソール上で、
export PGDATA=/usr/share/postgresql/data
pg_ctl -w start
データベース接続テスト(他PCからOBDC経由、JDBC経由)−正常に動作
pg_ctl -w stop
7.PostgreSQLをサービスに登録
cygrunsrv --install postmaster --path /bin/postmaster --args
"-D /usr/share/postgresql/data -i" --dep ipc-daemon --dep
lanmanworkstation --termsig INT --user 'postgres' --shutdown
(メールでは改行・インデントしてますが、実際はしてません)
'postgres' は元々PostgreSQLサービス用に使っていたアカウントで、
サービスでログオンする権利は与えてあり、パスワードもチェックしました。
8.サービス開始
ここで最初に書いたエラーが出てサービスを開始できません。
cygwinコンソール上から指示しても、コントロールパネルのサービスで
開始指示しても同じです。
・他に試したこと
・PostgreSQL7.2.3-1 + cygipc1.11-1の組み合わせ
・バックアップしたデータを使わずinitDBから全て実施
・サービスのユーザー変更
・Cygwin1.dllのバージョンを1.3.15-2に変更
全て同じで、手動では起動可能でサービスの開始のみエラー。
以上、よろしくお願いします。
--
中神 有容
E-mail:t-naka @ gray.plala.or.jp
pgsql-jp メーリングリストの案内