使用するオペレーティング・システム・ユーザーを postgres
使用してデータベースを作成するために-長い間、あなたが設定していないとしてとしてデータベース(同じ名前のオペレーティング・システム・ユーザーに対応することが必要な権限を持つ役割をh9uest
、あなたの場合):
sudo -u postgres -i
ここやここがお勧めです。
その後、再試行してください。入力exit
システム・ユーザーとして動作して行われたときpostgres
。
または単一のコマンドを実行するcreateuser
とpostgres
とsudo
同じように、ドレースによって実証され、別の答えインチ
重要なのは、同じ名前のデータベースロールに一致するオペレーティングシステムユーザーを使用して、ident
認証によるアクセスを許可することです。postgres
データベースクラスタを初期化したデフォルトのオペレーティングシステムユーザーです。マニュアル:
データベースシステムをブートストラップするために、新しく初期化されたシステムには、常に1つの事前定義されたロールが含まれています。このロールは常に「スーパーユーザー」であり、デフォルトでは(実行中に変更されない限りinitdb
)、データベースクラスターを初期化したオペレーティングシステムユーザーと同じ名前になります。通常、このロールの名前はになりますpostgres
。さらに多くのロールを作成するには、最初にこの初期ロールとして接続する必要があります。
非標準のユーザー名を使用した、またはオペレーティングシステムのユーザーが存在しない、奇妙なセットアップについて聞いたことがあります。そこで戦略を適応させる必要があります。
マニュアルでデータベースの役割とクライアント認証について読んでください。
FATAL: role "user" is not permitted to log in
、に遭遇するかもしれませんが、dba.stackexchange.com / questions / 57723 /…をチェックしてください。