こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

開けなくなったデーターベースから、せめてデータだけでも救いたいのですが方法はあるのでしょうか?

OSはWindows Server 2003 for Small Business Serverで、 PosstgreSQL 8.2です。

ブラウザーで動くシステムですが、完成していてずっと動いていたものが、ある日突然起動してパスワードが通るとすぐにエラーメッセージが出て何もできなくなりました。完成してから問題が起きるまで、システムを利用し、データーベース入力をする人はいても、プログラムに手を加えることはありませんでした。なのに、突然エラーが起るようになったらしいのです。

エラーメッセージを下に表示しますが、このようなメッセージの経験のあるかたがいらっしゃったら、どういうことを言っているのか教えていただけませんか?
壊れてしまったのか、手を加えられた(人為的に)可能性があるのか?
直せる可能性はあるのか?せめてデーターだけでも救えないのか?
そんなことが少しでもわかることができれば本当に助かります。

エクセルにデーターを取り込もうとしましたが、そもそもODBCに接続ができないようで一たん断念しました。

よろしくお願いします。
エラーメッセージは:
Warning: pg_connect() [function.pg-connect]: Unable to connect to PostgreSQL server: could not connect to server: Connection refused (0x0000274D/10061) Is the server running on host "localhost" and accepting TCP/IP connections on port xxxx in

以上です。よろしくお願いします。

投稿日時 - 2009-07-01 15:35:40

QNo.5089774

すぐに回答ほしいです

質問者が選んだベストアンサー

そもそも、Pgsql、動いていますか?止まっていても同じメッセージが
出る場合があります。
プロセスが動いているか確認してみて下さい。
プロセスが動いている場合、
ホスト側で、
psql -h localhost -p 5432
を実行して見て下さい。
同じメッセージになりますか?
同じならば、以下のような対処も可能です。
http://www.ne.jp/asahi/nature/jp/moteviewtroubleshoting.htm

投稿日時 - 2009-07-01 15:57:49

補足

tommy1977さん、
上のサイトで順にやってみました。
postmaster.exeがないことがわかりましたが、続きのステップである
ユーザーアカウントを設定しなおし、
サービスからDatabase Serverを起動することができました。

でもプロセスで確認すると、これでpg_ctl.exeは動いたのですが、
やっぱりpostmaster.exeは動いていません。
(はなからないのだからあたりまえ?)

postmaster.exeは必要なのでしょうか?

その段階で、Web側から問題のプログラムを走らせると、
当初のConnection refuser 0x0000274D/10061はなくなり、
いったん始まったように見せながら(背景色とかはちゃんと出るところまで行くのですが)中身は全部エラーメッセージでした。

で、欲を出して、サービスのログオンのユーザー名を変更して、でも元にもどしたら、次にPCを起動したときには、
スタートアップで問題が起きたというメッセージが出るようになり、
タスクマネージャで見ると、どうやらpostgres.exeの起動に失敗(ログオン失敗)したようで、Postgres関係のプロセスが何も始まらなくなくなってしまいました。

tommy1977さんがおっしゃっていた
プロセスが動いていないという状態になったのだと思います。
もちろんエラーメッセージはもとどおり
Connection refuser 0x0000274D/10061
に、なってしまいました。

ユーザーアカウントの設定と、サービスのログインのところは、
何度も確認しているのですが、
もう、どうしていいのかわかりません!!

お知恵を拝借できますでしょうか?よろしくお願いします。

投稿日時 - 2009-07-02 13:57:46

お礼

tommy1977さん、
早速のお返事ありがとうございます。
私は全然知識がないので理解に苦労をしていますが、
とりあえず教えてくださったところまでがんばってやってみます。
またよろしくお願いします。

投稿日時 - 2009-07-01 17:23:20

このQ&Aは役に立ちましたか?

2人が「このQ&Aが役に立った」と投票しています

回答(4)

ANo.4

えっと・・・ない、というのは
c:\ProgramFiles\PostgreSQL?
配下にもなかった、って事でしょうか。

タスクマネージャーで見て、
postmaster.exe と postgres.exe と pg_ctl.exe
この3つ動いていませんか?

私は質問者様が使用しているアプリがどんなものか存じません。
表面上DBから引っ張ってこれる状態で動作的にOKならば、
それでOKなのでしょう。

>ポスグレ何とか起動できました。
ってことは、前の段落から考えて”サービス”としてきちんと起動している、ってことですよね。

では、#1さんのおっしゃるとおり、pgADMINIIIを使って、
”中身のデータベース”がきちんと動作しているかどうかを
確認して下さい。

それで動作しているとしてOKであれば、何も手間と危険を冒してまで
再インストールする必要はないでしょう。

他に何かまたエラーが出た、等あったら、また新規で別に質問されることをお勧め致します。

投稿日時 - 2009-07-13 17:39:09

お礼

tommy1977さん。早速のご回答ありがとうございました。
何度もお聞き返したのに、そのたびに冷静なご回答をいただきまして、感謝しております。
この件につきましては、pgADMINIIIに立ち返り、確認してみます。
ありがとうございました。

投稿日時 - 2009-07-14 09:23:47

ANo.3

確認が遅くなってしまいました。

すみません・・・。

>でもプロセスで確認すると、これでpg_ctl.exeは動いたのですが、
>やっぱりpostmaster.exeは動いていません。
>(はなからないのだからあたりまえ?)
>postmaster.exeは必要なのでしょうか?

→そもそもの前提が間違っています。
pg_ctl.exeはあくまで”管理用”のプロセスで、
Postmaster.exeはPgsql本体(に近い)と思っていただければOKです。
つまり、Postmaster.exeが”ない”ということはもっと他の原因が
考えられます。
コマンドプロンプトで、フルパス指定をしてPostmaster.exeを実行しても”そんなファイルはない”と言われたのでしょうか。
そうであれば、これはDB部分を待避させての再インストールが早いと思われます。(もっとメンドクサイですが)

もし、この”ない”が”動いていない”と同義で有れば、
パスワードの再設定で動いていたかもしれない。

>で、欲を出して、サービスのログオンのユーザー名を変更して、でも元にもどしたら、次にPCを起動したときには、
>スタートアップで問題が起きたというメッセージが出るようになり、
>タスクマネージャで見ると、どうやらpostgres.exeの起動に失敗(ロ
>グオン失敗)したようで、Postgres関係のプロセスが何も始まらなく
>なくなってしまいました。

pgsqlの動作を考えると、これは・・・結構厳しい対処方法ですね。
(変更して元に戻した、とおっしゃっていますが、pgsqlに限らず、
windowsのサービスのアカウント変更時にはサービスを停止させてから
変更させ、config系のファイルをきちんと書き換えるなどの対処を
行ってから実施するのが普通です。)
アカウントは確かpostgresql.confには載ってなかったとは思いますが、再度、アカウント変更は”手入力”ではなく、参照を使用して
実施して下さい。
もう一点、パスワードは”あっていますか?”
使用されているserverのアカウント等確認を実施して下さい。

これくらいですかね・・・

投稿日時 - 2009-07-06 11:43:37

お礼

tommy1977さん、ご丁寧な回答ありがとうございました。

ポスグレ何とか起動できました。pg_ctl.exeも動いています。

その上で、「postmaster.exeがない」についてですが、
検索で全てのドライブで"postmaster"を検索したのですが、出てきたのは、postmaster.opsとpostmaster.pid それからpostmasterというフォルダだけでした。
フォルダにはpasswd.pmが入っているだけです。
これは、つまりtommy1977さんがおっしゃるように、再インストールということなのでしょうか?

もう一度、お知恵拝借お願いいたします。

投稿日時 - 2009-07-13 10:35:47

ANo.1

pgAdminIIIでもダメ?

投稿日時 - 2009-07-01 15:48:04

補足

nda23さん、pgAdminIII見ました。
Postgresが全く起動しなくなってしまったんです。
(ログイン失敗とかで)
そうなってしまっては、pgAdminIIIも何もできないようで、
今ちょっと絶望してます。
もう少し改善された状態まで進んだら、是非次はpgAdminIIIでやってみたいと思います。
ありがとうございました。

投稿日時 - 2009-07-02 14:49:18

お礼

nda23さん、
早速のお返事ありがとうございました。
何もかもは質問しないように努力したいとは思うのですが、
私はポスグレは壊れてはじめてさわろうとしている超初心者です。
(ってまだ本体にも到達できてませんが)
何年も前にはプログラマだったので全く会話できないわけでは
ないのですが、時代がちょっと・・・
で、本当に申し訳ないのですが、
pgAdminIII 
っていったいなんですか?ごめんなさい。

投稿日時 - 2009-07-01 17:29:32

あなたにオススメの質問