psql: 致命的: データベース " "は存在しません 質問する

psql: 致命的: データベース

私は使用していますPostgres アプリMac 用。以前他のマシンで使用したことがありましたが、MacBook にインストールするときに問題が発生しました。アプリケーションをインストールして、以下を実行しました。

psql -h localhost

返される結果:

psql: FATAL:  database "<user>" does not exist

コンソールを実行して、検索しようとしているデータベースを作成することすらできないようです。次のコマンドを実行しても同じことが起こります:

psql

または、アプリケーションのドロップダウン メニューから psql を起動した場合:

マシンの統計:

  • OSX10.8.4 より
  • psql (PostgreSQL) 9.2.4

どのような助けでも大歓迎です。

Homebrew経由でPostgreSQLをインストールしようとしましたが、同じ問題が発生しました。アプリケーションのドキュメンテーションそれは次のように述べています。

Postgres.app が最初に起動すると、psql何も指定されていない場合のデフォルトのデータベースである $USER データベースが作成されます。デフォルトのユーザーは $USER で、パスワードはありません。

したがって、アプリケーションは $USER を作成していないようです。ただし、インストール→アンインストール→再インストールを何度か繰り返したので、私のマシンに何か問題があるに違いありません。

答えは見つかりましたが、このスレッドで回答したユーザーとして、それがどのように機能するかは正確にはわかりません ->Mac で PostgreSQL を実行する: データベース「postgres」が存在しませんフォローアップしませんでした。psql を開くために次のコマンドを使用しました。

psql -d template1

ベストアンサー1

パッケージマネージャーが$userという名前のデータベースを作成できなかったようです。その理由は

psql -d template1

あなたにとってうまくいくのは、template1 が postgres 自身によって作成されたデータベースであり、すべてのインストールに存在するということです。どうやら template1 にログインできるようなので、データベースによって割り当てられた権限を持っているはずです。シェル プロンプトでこれを試してください:

createdb

そして再度ログインできるか確認しましょう

psql -h localhost

これにより、ログイン ユーザー用のデータベースが作成されるだけなので、これが必要な操作だと思います。createdb が失敗した場合は、独自のデータベースを作成する権限がないため、homebrew パッケージを修正する方法を検討する必要があります。

おすすめ記事