データベースを再起動するためにここでパスワードを入力するように求められるのはなぜですか

データベースを再起動するためにここでパスワードを入力するように求められるのはなぜですか

私はちょうど

pg_basebackup -h プライマリホスト -p プライマリポート -D PGDATA -U レプリケーションユーザー

そして私はDBを再起動したかったので、

sudo su - postgres

sudo サービス pos​​tgres を再起動

そしてec2は私に言う

他人のプライバシーを尊重し、入力する前によく考えてください。

そして、postgres のパスワードを尋ねられます。しかし、この ec2 インスタンスを作成して以来、postgres にパスワードを設定したことはありません。そのため、実際にはパスワードはありませんが、尋ねられ続けます...

pg_basebackup に関連する何かがあるかもしれないと思いますが、プライマリ データベースにも特定のパスワードがないため、わかりません。

ここで何をすればいいでしょうか、ありがとうございます

答え1

走るとき

sudo su - postgres

それは新しいpostgres ユーザーが所有するシェル。

それから、その殻からあなたが実行します別のsudo:

sudo service postgres restart

そして当然のことながら、現在のシステムユーザーのパスワードを尋ねられます。ポストグルこれは、postgres に属するシェルから実行したためです。繰り返しますが、これは postgres のパスワードを設定したか設定しなかったかによるものではなく、データベース ユーザー postgres に関するものではなく、最初のコマンドでシェルが呼び出された OS アカウントに関するものです。

最初のコマンドをスキップするか、postgres システム アカウントとして作業が完了したらそのシェルを終了します。postgres ユーザーではなく、通常の管理者ユーザーから sudo を使用してサービスを管理する必要があります。

関連情報