簡體   English   中英

無法連接到本地PostgreSQL數據庫

[英]Unable to connect to local PostgreSQL database

我創建了一個簡單的rails應用程序

1

$ rails new myapp1 -d postrgresql

2 刪除了/public/index.html

3 創建了Homecontroller和動作

4 寫了路線

myapp1 :: Application.routes.draw做

  root :to => "home#index" match 'about' => 'home#about' match 'contacts' => 'home#contacts' match 'projects' => 'home#projects' end 

5 創建了視圖和默認布局

6 底線。 這是database.yml

發展:

  adapter: postgresql encoding: unicode database: myapp1_db host: localhost pool: 5 username: myapp1_user password: 1234 test: adapter: postgresql encoding: unicode database: myapp1_db host: localhost pool: 5 username: myapp1_user password: 1234 production: adapter: postgresql encoding: unicode database: myapp1_db host: localhost pool: 5 username: myapp1_user password: 1234 

當然我創建了用戶和數據庫

sudo -u postgres psql
postgres=# \password
postgres=# create user myapp1_user with password '1234';
postgres=# create database myapp1_db owner myapp1_user; 

但有一些擔憂:

1 現在我不使用任何數據庫,但盡管如此,應用程序仍然出錯

PG ::錯誤致命:用戶“myapp1”的對等身份驗證失敗

2 看起來rails似乎對database.yml視而不見。 為什么它使用用戶myapp1而不是myapp1_user

空白在YAML中很重要。

production:
  adapter: postgresql
    encoding: unicode
    ...
    password: 1234

應該:

production:
  adapter: postgresql
  encoding: unicode
  ...
  password: 1234

在database.yml文件中提供主機和端口,如下所示:

    development:
      adapter: postgresql
      encoding: unicode
      database: myapp1_db
      host: localhost
      pool: 5
      username: myapp1_user
      password: 1234
      host: localhost
      port: 5432

在Ubuntu 12.04 LTS上使用Rails 3.2.x和PostgreSQL 9.1.x就像魅力一樣

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM