2017-02-20 7 views
1

私はthese instructionsに続いて、PostgresのデータディレクトリをC:\ Users \ username \ Documents \ dir \ postgres96_dataからC:\ Users \ username \ Documents \ postgres96_dataに移動します。pgdataディレクトリの移動後にWindowsでPostgresサービスが開始されない

これで、Postgresサービスが開始されません。 (自由PT-BRから翻訳)、次のメッセージを生成する手動で起動しようとすると:。彼らは使用をbeeingていない場合に

は、「ローカルコンピュータ上のpostgres-x64-9.6サービスは、起動、停止 一部のサービスは自動的に停止します他の サービスまたはプログラムによって。

Iログがあったコマンドで

"C:\Program Files\PostgreSQL\9.6\bin\pg_ctl.exe" start -D "C:\Users\username\Documents\postgres96_data" -w 

、CMD.EXEにデータベースを起動する(正常)試み:

2017-02-20 07:33:26 BRT LOG: database system was interrupted; last known up at 2017-02-18 09:52:00 BRT 
2017-02-20 07:33:27 BRT FATAL: the database system is starting up 
... 
2017-02-20 07:35:10 BRT FATAL: the database system is starting up 
2017-02-20 07:36:19 BRT LOG: database system was not properly shut down; automatic recovery in progress 
2017-02-20 07:36:19 BRT LOG: invalid record length at 6/438EBB88: wanted 24, got 0 
2017-02-20 07:36:19 BRT LOG: redo is not required 
2017-02-20 07:36:19 BRT LOG: MultiXact member wraparound protections are now enabled 
2017-02-20 07:36:19 BRT LOG: sistema de banco de dados está pronto para aceitar conexões [database system is ready to accept conections, free translation] 
2017-02-20 07:36:21 BRT LOG: autovacuum launcher started 

先行研究

Link

01あなたは、サービス定義を変更する必要が

Link

Link

Link

答えて

2

。サービスで古いデータディレクトリが使用されています。

pg_ctl unregister -N postgres-x64-9.6 

新しいデータディレクトリを使用して、次に再作成:それを、サービスを変更するには、それを削除して再作成するには

pg_ctl register -N postgres-x64-9.6 -D "C:\Users\username\Documents\postgres96_data" 

これはデフォルトのインストールを使用していたと仮定しサービスは内蔵の「ネットワークアカウント」を使用して実行されます。そうでない場合は、サービスを登録するときに必要なユーザ名とパスワードに-U-Pのパラメータを指定する必要があります。

+0

動作しませんでした。このアプローチは、最初のリンクでアドバイスされているように、regeditの編集と同じ効果はありませんか? – pedrovgp

+0

@pedrovgpこれは、PostgreSQL用のWindowsサービスを削除してから作成することです。それは私のために働いた。 P.S.これらのコマンドを実行する前に、管理者としてコマンドプロンプトを実行してください。 –

関連する問題