0

私はすでに Rails プロジェクトを持っているので、インストールしてpgadmin PostgresqlIII を使用します。開発では posgresql を使用する必要があり、sqlite本番では使用する必要がありますheroku。この質問の 2 番目の回答に従いましたPostgresql他に何もせずにシナプスセンターを使用すると、ユーザーを作成しようとするとエラーが発生しました:

createuser dexter
Shall the new role be a superuser? (y/n) n
Shall the new role be allowed to create databases? (y/n) y
Shall the new role be allowed to create more new roles? (y/n) y
createuser: could not connect to database postgres: FATAL:  role "dexter" does not exist
4

1 に答える 1

0

使用する:

$ sudo -u postgres createuser

質問に答えるには、postgresql のドキュメントから:

「新しいスーパーユーザーを作成する場合は、CREATEROLE 権限だけでなく、スーパーユーザーとして接続する必要があります。スーパーユーザーであることは、データベース内のすべてのアクセス許可チェックをバイパスできることを意味するため、スーパーユーザー権限を簡単に付与しないでください。」

作成しているアカウントは単に Rails アプリケーションへのアクセスを許可するためのものであり、データベースを作成する機能は理にかなっていますが、スーパーユーザー権限はお勧めできません。

于 2013-08-08T21:42:08.080 に答える