こちらの記事を見ながらAWS上に作ったpostgreSQLに入ろうと長いこと格闘致しました。
psql -h <エンドポイント> -U <ユーザ名> -d <データベース名>
↑これで入れるらしいのにエラーが止まらない。
psql: FATAL: database "similar-develop-db" does not exist
そんなDBないって言われる(´;ω;`)
いろいろ調べるうちにポイントは<ユーザ名>と<データベース名>かな??と気付く。
そういえばDB名ってどこに書いてあるんだろうと思ってAWSを見に行ってみた。
・・・ないな。そういえばDB名を設定した覚えもない。
え~、DB名設定しないと接続できないのかな…と思ってまたいろいろ探してみた。
そしたらこんな記事に出会いました。
記事の一部を抜粋しますと
『ロール名は PostgreSQL をインストールした直後はスーパーユーザーである postgres ロールしか作成されていませんので -U postgres と指定してください。ロール名を省略した場合は OS のユーザー名が使用されます。
※ PostgreSQL では一般的にユーザーと呼ばれるものとグループと呼ばれるものをまとめてロールと呼んでいます。
データベース名には接続するデータベース名を指定します。省略した場合はロール名と同じ名前のデータベースに接続します。( postgres データベースは自動で作成されており、 postgres ロールで接続した場合は postgres データベースに接続します)。』
と書いてありました。
なるほど・・・?つまり、
psql -h <エンドポイント> -U postgres -d postgres
で良いのでは!?と閃いて試したのですが上手くいかず。
psql: FATAL: password authentication failed for user "postgres"
FATAL: password authentication failed for user "postgres"
そんなユーザー存在しないって😭
あれ、でもそういえば自分マスターユーザー名は登録した気がするな。。。と思って修正。
psql -h <エンドポイント> -U root -d postgres
・・・入れました!!DB入るのにどんだけ時間かかるんだ自分(笑)