2015-06-20 52 views
0

我想使网站使用红宝石砖(使用MAC),因为我对web开发很新。我很快生成了一个模板应用程序,但它没有工作,因为它正在寻找在后台运行的postgres数据库。从初学者开始postgres

我有Java/C的背景,因此我真的不知道发生了什么。我只知道基本的数据库命令,比如WHERE GROUP BY等,以及主要思想。

所以我下载了pgAdmin3,希望用户界面能让它更容易。尽管如此,我仍然找不到出路。现在,当我在一个终端上执行'rails server'时出现以下错误,而另一个终端上出现'postgres -D/usr/local/psql/data'。

FATAL: role "mike" does not exist 

(我认为我创建位于/ usr /本地/ PSQL /数据,并没有意识到,我只是复制我在网上找到,看看它是否会工作守则,我正在接受前“想不出数据库连接到服务器错误',因为没有数据库运行。)

从以下链接,我想我必须创建一个角色。但我不知道在哪里写'创造角色迈克'。

http://www.postgresql.org/docs/9.4/static/tutorial-createdb.html http://www.postgresql.org/docs/9.4/static/database-roles.html

我真的很感激,如果你能告诉我在哪里写我的命令,我在那里看到的数据库,角色等,并对其进行修改。我想相信它比看起来更容易,即使是初学者也是如此。

+1

我在Linux上打这个,我不知道这是否适用于Mac:尝试连接到PostgreSQL服务器使用* Unix域套接字*使用**对等身份验证**,它假定用户有数据库中的姓名与操作系统中的姓名相同:由于操作系统本身确认身份,因此无需密码确认。 [看这里](http://www.postgresql.org/docs/9.3/static/auth-pg-hba-conf.html)了解配置文件。 –

+0

你是如何安装PostgreSQL的?来自哪里? –

+0

我使用'brew install postgresql'并且出现了这些错误。 Postgresapp似乎可以工作。 –

回答

0

FATAL:角色“迈克”不存在

这是很常见的error.You需要做下面的步骤来克服它。

  1. sudo -u postgres psql

  2. 现在创建你config/database.yml的发展部分指定的用户:

    CREATE ROLE your_user_name WITH LOGIN PASSWORD 'your_password'

+0

for'sudo su postgres',我得到'su:未知登录名:postgres' –

+0

'sudo postgres'给出'不允许PostgreSQL服务器执行根目录。 ' –

+0

@ OE1尝试给'psql -U postgres'而不是 – Pavan

0

如果你有机会到命令行,你会需要使用psql创建角色。如果你刚刚开始使用postgresql,那么涉及到一些小技巧。 Postgresql只从postgres用户初始化开始。您必须从postgres用户登录中添加其他用户。

这就是我如何在新的安装。

从root用户:(假设Linux)的

su postgres 
psql 
create user <your user name> superuser ; 
\q 
exit 

现在你可以使用PSQL与普通用户ID。

+0

它说'su:对不起' –

0

只需移动到 http://postgresapp.com/ 了解错误消息。 +我有我想要的可视化界面。感谢您的建议,希望这对其他初学者也有帮助。