1

このチュートリアルに従って、Homebrew を使用して macOS 10.13.6 を実行している Mac に PosgreSQL 10.5 をインストールしました。インストール後、=# \duを実行してすべてのユーザーを表示しました。インストール中に PostgreSQL が作成するというチュートリアルの Mac の名前を持つユーザーを見ましたが、「postgres」デフォルト ユーザーは作成されませんでした (または、少なくとも表示されませんでした)。

私の主な問題は...

「ルートで」PostgreSQL にログインする必要がありますが、それが何を意味するのか正確に理解できないか、何かが間違っています。PostgreSQL wiki の First Stepsドキュメントの最初のステップに従うと、次のように書かれています...

最初に root として接続/ログインします。

 # su - postgres
 $ psql
 psql (9.6.0)
 Type "help" for help.

しかし、ターミナル ウィンドウを開いてsu - postgres入力すると、パスワードが要求されます。その役割に与えられた可能性のあるすべてのパスワードを入力しましたが、ただsu: Sorry.

私はいくつかの調査を行い、これを実行してパスワードを変更しようとしました:

postgres=# \password postgres.

これにより、パスワードを 2 回入力するように求められましたが、うまくいったようです。しかし、戻って : を実行するとsu - postgres、同じsu: sorry.

そこで、次のように入力してみました: psql postgres. これにより、少なくとも $ が postgres=# に変更されました。これは、私が PostgreSQL コマンド ラインにいることを示してから、同じ :su: postgresになりましたが、(=) 記号が (-) に変更されただけなので、次のように変更されました。postgres-#

これは、「ルートで PostgreSQL にログインしている」ことを意味しているのではないかと考えましたが、次のコマンドを実行しました。

postgres=# su - postgres
postgres-# CREATE SCHEMA test
postgres-# CREATE USER tester PASSWORD 'P@ssword1'
postgres-# GRANT ALL ON SCHEMA test TO tester
postgres-# \q

...そして、どれもうまくいきませんでした。ユーザーまたはスキーマは作成されませんでした。

歴史...

  • テストのために過去にこのMacにPostgreSQLを数回インストール/アンインストールしました
  • さまざまな理由で pdAdmin もインストール/アンインストールしました

この Homebrew のインストール中に「postgres」ロールが作成されず、この問題を引き起こしたすべてのシャッフルで何かを行った可能性が高いです。そのため、そのチュートリアルの残りの部分を読み、入力した$ createuser postgresところ、「postgres」ロールが作成されたように見えました。ALTER ROLEその役割を与えるために使用しようとしましCreate DBたが、コマンドラインを使用して機能させることができなかったので、pgAdminを開いて役割を確認し、DBの作成を許可してから、コマンドラインに戻って=# \du再度実行し、Create DB横に表示されました私が作成した「postgres」ロール。pgAdminにすべてを追加したところ、次のようになりました。

                                      List of roles
   Role name    |                         Attributes                         | Member of
----------------+------------------------------------------------------------+-----------
 MyMacsNameHere | Superuser, Create role, Create DB, Replication, Bypass RLS | {}
 postgres       | Superuser, Create role, Create DB, Replication             | {} 

私の最終目標は…

私はこの YouTube チュートリアルに従って、Flask Web アプリケーションをゼロから作成しようとしています。YouTube のチュートリアルでは彼は MySQL を使用していますが、私は PostgreSQL を使用したいと考えています。言うまでもなく、私は学習曲線に直面しています。

4

0 に答える 0