web-dev-qa-db-ja.com

Postgres「psqlが内部コマンドまたは外部コマンドとして認識されない」

Postgresの場合、Windows 8で既にbinフォルダーの場所をパス変数に設定していても、このエラーが何度も発生し続けます。他に何か足りないものはありますか?

(評判が悪いため写真を投稿できません)

25
as1216

私はあなたの問題を抱えており、再び機能するようになりました(Windows 7).

私のセットアップは最初は実際に機能していました。 I postgresをインストール済み そして、C:\Program Files\PostgreSQL\9.6\bin; C:\Program Files\PostgreSQL\9.6\libを使用してシステムPATH変数をセットアップします。コマンドラインのpsqlキーワードではエラーは発生しませんでした。

両方が本当に必要かどうかをテストするために、一度に1つずつ上記のPATH変数を削除しました。 libパスを削除した後もPsqlは機能し続けましたが、binパスを削除した後は機能しなくなりました。 binを返したとき、まだ機能しませんでした。libでも同じです。試行間でコマンドラインを閉じて再度開き、パスを確認しました。このパスは作業時と同じでしたが、問題は長続きしました。貼り直しました。

Postgresをアンインストールして再インストールしました。問題が長引いた。パス内の「; C:...」の間のスペースを削除して再保存すると、ようやく機能しました。

それが本当に犯人であったスペースであったかどうかわからない。環境変数は、インストール後に変更して更新する必要があるだけかもしれません。

また、古いパス構成には何らかの残留メモリがあるように見えるため、libとbinの両方のパスが必要かどうかもまだわかりません。しかし、もう一度テストしたくありません。

3
voluntier

パスが実際に実行可能ファイルにつながることを確認してください。私はバージョン11を使用していますが、これがパスとして設定されるまで機能しませんでした:

C:\Program Files\PostgreSQL\11\bin\bin

たぶん、これがバージョン11の構造であるか、どういうわけかインストールに失敗しましたが、それ以来問題はありませんでした。

2
Nate

すべての回答を試しても頭が回る場合は、ダウンロードしたものとバージョンを変更することを忘れないでください。

たとえば、単に貼り付けをコピーしないでください

;C:\Program Files\PostgreSQL\9.5\bin ;C:\Program Files\PostgreSQL\9.5\lib

より明確に、

;C:\Program Files\PostgreSQL\[Your Version]\bin ;C:\Program Files\PostgreSQL\[Your Version]\lib

私は頭を回していた。お役に立てれば。

1
Unnit Metaliya

少し遅れたとしても、すべてのスペースを削除することでPATHの問題を解決しました。

;C:\Program Files\PostgreSQL\9.5\bin;C:\Program Files\PostgreSQL\9.5\lib

今私のために働いています。

1
derRichter

Windows 10

サーバーがWindows 10で自動的に起動せず、cmdで次のコマンドを使用してPostgresqlのパスを設定した後、自分で起動する必要がある可能性があります。

pg_ctl -D "C:\Program Files\PostgreSQL\11.4\data" start

上記のコマンドを実行するには、「C:\ Program Files\PostgreSQL\11.4\bin」ディレクトリ内にいる必要があります。

例:

enter image description here

Psqlを使用するには、まだbinディレクトリ内にいる必要があります

1
Abdel-Raouf