6

ここ数日、PostgreSQL9.2をインストールしようとしています。オンラインで見つけたものはすべて試したと思いますが、それでもサービスは開始されません。現在、Windows7SP1を実行しています。以前はPostgreSQL8.3をインストールして正常に動作していましたが、数週間前にアンインストールすることにしました。私はそれを完全にアンインストールし(postgresユーザーとデータファイルを削除し)、バージョンをインストールしようとするたびに、データベースモジュールのロードが行われるセットアップの最後にこの致命的でないエラーが発生します。postgresqlサービスが開始されないか、Windowsが示すように、開始してから停止することがわかりました。これは、インストールのログファイルの関連部分です。

771ファイルを正常に処理しました。0ファイルの処理に失敗しました

initcluster.vbsが最後まで実行されました

スクリプトstderr:

データベースサーバーの起動を構成しています...
cscriptの実行//NoLogo"C:\ Program Files(x86)\ PostgreSQL \ 9.2 \ installer \ server \ startupcfg.vbs" 9.2 "NT AUTHORITY \ NetworkService" "****" "C:\ Program Files(x86)\ PostgreSQL \ 9.2 "" C:\ Program Files(x86)\ PostgreSQL \ 9.2 \ data "" postgresql-9.2 "
スクリプト終了コード:0

スクリプト出力:
 startupcfg.vbsが実行されて完了しました

スクリプトstderr:

メニューショートカットの作成...
cscript // NoLogo "C:\ Program Files(x86)\ PostgreSQL \ 9.2 \ installer \ server \ createshortcuts.vbs" 9.2 "postgres" 5432 "PostgreSQL 9.2(x86)" "C:\ Program Files(x86)\PostgreSQLを実行しています\ 9.2 "" C:\ Program Files(x86)\ PostgreSQL \ 9.2 \ data "" postgresql-9.2 "
スクリプト終了コード:0

スクリプト出力:
 FixupFile(C:\ Program Files(x86)\ PostgreSQL \ 9.2 \ scripts \ serverctl.vbs)を起動します。..
   読み取り用にファイルを開いています...
   ファイルを閉じる(読み取り)...
   プレースホルダーの交換...
   書き込み用にファイルを開いています...
   ファイルを閉じる...
  FixupFile()を終了します。
FixupFile(C:\ Program Files(x86)\ PostgreSQL \ 9.2 \ scripts \ runpsql.bat)を起動します。..
   読み取り用にファイルを開いています...
   ファイルを閉じる(読み取り)...
   プレースホルダーの交換...
   書き込み用にファイルを開いています...
   ファイルを閉じる...
  FixupFile()を終了します。
createshortcuts.vbsが最後まで実行されました

スクリプトstderr:


データベースサーバーを起動しています...
cscript // NoLogo "C:\ Program Files(x86)\ PostgreSQL \ 9.2 \ installer \ server \startserver.vbs"postgresql-9.2を実行しています
スクリプト終了コード:0

スクリプト出力:
 postgresql-9.2の開始
サービスpostgresql-9.2が正常に開始されました
startserver.vbsが最後まで実行されました

スクリプトstderr:


追加のSQLモジュールを読み込んでいます...
cscript // NoLogo "C:\ Program Files(x86)\ PostgreSQL \ 9.2 \ installer \ server \ loadmodules.vbs" "postgres" "****" "C:\ Program Files(x86)\ PostgreSQL\9.2"を実行しています"C:\ Program Files(x86)\ PostgreSQL \ 9.2 \ data" 5432
スクリプト終了コード:2

スクリプト出力:
 postgresデータベースにadminpackモジュールをインストールしています...
    'C:\ Users \ George \ AppData \ Local \ Temp\radA5996.bat'を実行しています...
psql:サーバーが予期せず接続を閉じました
    これはおそらくサーバーが異常終了したことを意味します
    リクエストの処理前または処理中。

'postgres'データベースに'adminpack'モジュールをインストールできませんでした
loadmodules.vbsが実行されて完了しました

スクリプトstderr:
 プログラムがエラー終了コードで終了しました

cscriptの実行中にエラーが発生しました//NoLogo"C:\ Program Files(x86)\ PostgreSQL \ 9.2 \ installer \ server \ loadmodules.vbs" "postgres" "****" "C:\ Program Files(x86)\ PostgreSQL \ 9.2 "" C:\ Program Files(x86)\ PostgreSQL \ 9.2 \ data "5432:プログラムがエラー終了コードで終了しました

[10:34:28]データディレクトリをiniファイルに書き込みます...
[10:34:28]ポート番号、サービスID、ロケール、スーパーユーザーをiniファイルに書き込みます...
[10:34:28] ServiceID(postgresql-9.2)をregistry/iniに書き込みます...
[10:34:28]スーパーユーザーをiniファイルとWindowsレジストリに書き込みます...
[10:34:28]サービスアカウントをiniファイルとWindowsレジストリに書き込みます...
[10:34:28]サーバーの説明をiniファイルに書き込みます...
[10:34:28]サーバーのブランドをiniファイルに書き込みます...
[10:34:28]「スタックビルダーが無効になっているかどうか」をiniファイルに書き込みます。
[10:34:29]インストール後/アップグレード後のタスクの実行を終了しました。

アンインストーラーの作成
アンインストーラーの作成25%
アンインストーラーを50%作成する
アンインストーラーの作成75%
アンインストーラーを100%作成する
インストールの完了
4

6 に答える 6

3

私も同じ問題を抱えていました。ある時点で、インターネット接続を介してパッケージを取得する必要があります。インストールパッケージs/bは接続なしでインストールできるため、これは正しくありませんが、そのようになっています。ファイアウォールがインストールをブロックしています。これがあなたがする必要があることです:

Windowsファイアウォールをシャットダウンします(コントロールパネル\すべてのコントロールパネルアイテム\ Windowsファイアウォール\設定のカスタマイズ)

この優れたプログラムを使用する場合は、ファイアウォールコントロールをシャットダウンします(タスクバーを終了するか、タスクマネージャーを使用してUIとサービスを強制終了します-2項目)

選択したパッケージをダウンロードする場合:キー保護サービスをシャットダウンします:ベースフィルタリングをシャットダウンします(保護されないままになります!-BFEが再起動されると、依存関係が再起動します)ベースフィルタリングエンジンIKEおよびAuthIPIPsecキーイングモジュールIPsecポリシーエージェントICS.. ..

すべての保護を再開することを忘れないでください。

于 2012-12-30T17:01:31.213 に答える
2

英語で書かれた Windows アカウントからのみ postgres をインストールします。たとえば、ユーザー「Аня」からのインストールは常に失敗します。

于 2014-05-26T18:58:59.307 に答える
2

Win7 x64 での Pg 9.2.4 インストーラーの同様の問題に直面しました。postgres サービスが停止しているため、「adminpack」モジュールがロードされていないことが判明しました。起動してすぐに終了します。この実行中の Pg サービスを手動でチェックして、ロードできるかどうかを確認できます。できない場合は、「データ」ディレクトリの構成ファイルが見つからないことが原因である可能性があります。initdb コマンドは、有効なクラスターを作成し、対応する *.conf ファイルをコピーできません。私は詳細を掘り下げようとしましたが、インストーラーはユーザー権限の複雑なチェックを行っており、あなたの (そして私の) ケースでは失敗する可能性があります。

zip バイナリから Pg をインストールしてみてください。次のコマンドだけで済みました (20 分未満)。元の記事

1)「postgres」Windowsユーザー(管理者権限なし)を作成し、Pgフォルダーと「data」フォルダーに対する完全な権限を付与します。これを行うには、コマンド ラインから「cmd」を管理者として実行し (Enter ではなく Ctrl-Shift-Enter を押して「cmd」を実行します)、「net user postgres /add」を発行します。次に、Pg フォルダー (外部にある場合は「data」フォルダー) を右クリックし、「postgres」にすべてのアクセス許可を付与します。

2) ワンクリック Pg インストーラー (Users\"your user"\AppData\Local\Temp\postgresql_installer_ の vcredist_x64.exe) に付属する Microsoft Visual C++ 20xx Redistributable Package をインストールします* *** - 最初の実行時にワンクリック Pg インストーラーによって作成されるフォルダー)。

3) Pg バイナリを Pg フォルダーに解凍し、管理者として「cmd」をその bin ディレクトリに解凍します。

4) 実行してクラスターを初期化します: initdb -U postgres -A password -E utf8 -W -D "path to your Pg folder"\data

5) Windows サービスをインストールするために実行します: pg_ctl register -N "postgresql" -U ".\postgres" -D "Pg フォルダー/データへのパス" -w

6) Windows サービス リストを開き、"postgresql" サービス プロパティを開きます。次に、そこに Windows ユーザー postgres のパスワードを設定します。新しい Pg サービスを開始してみてください。起動すれば、すべて問題ありません。

7) bin\pgAdmin3 を開き、ローカル サーバーに接続して、postgres データベースとそのメタデータを開きます。管理サービスの欠落に関する苦情と、これを修正する提案が表示されるはずです。[OK] を押すだけで、「adminpack」がインストールされます。

于 2013-08-26T10:57:12.003 に答える
1

Windows で特別な権限を持つ「C:\Program Files」の外にインストールしてみてください。同様の問題がありましたが、単に C:\Postres92 にインストールするだけで、すべてがすぐに機能します。

于 2014-02-07T07:46:45.413 に答える
1

解決策は、インストールする前に Windows ファイアウォールをシャットダウンすることです。インストール後、Windows ファイアウォールを有効にすることができます。

于 2013-01-17T21:48:26.800 に答える