2017-10-09 11 views
0

RiteアプリケーションのデータベースをSQLite3からPostgreSQLに移行しようとしていますが、これは簡単には見つかりません。私はこのRailscast(http://railscasts.com/episodes/342-migrating-to-postgresql)に従っています。SQLite3からPostgreSQLへのRailsアプリケーションの移行

私は次の私のdatabase.ymlのファイルを編集した:

default: &default 
adapter: postgresql 
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> 
timeout: 5000 

development: 
<<: *default 
database: db/development.postgresql 

test: 
<<: *default 
database: db/test.postgresql 

production: 
<<: *default 
database: db/production.postgresql 

私はここにいたすべてが「PostgreSQLの」から「SQLite3の」言ったすべての部品を変更することでした。これはRailscastと同じではありませんでしたが、私はそれが時代遅れであったと推測しました(2012)。

私はすでにgem 'pg'、 '〜> 0.21.0'をインストールしていましたが、SQLite3 gemを削除しました。私はすでにPostgreSQL 9.6.3をインストールしています。

次のタップの宝石(0.3.24)をインストールしました。この後、私は「すくいデシベルをすべて:作成」しようとしたが、返されたエラーメッセージは以下の通りです:

fe_sendauth: no password supplied 
Couldn't create database for {"adapter"=>"postgresql", "pool"=>5, 
"timeout"=>5000, "database"=>"db/development.postgresql"} 
rake aborted! 

私はHerokuの移行を行う必要があり、このウェブサイトで読む - 「Herokuのは、すくいデシベルを実行します。移行します'しかし、私はこれを試すと同じエラーが返されます。

このエラーメッセージが意味することは本当にわかりません - conf_hbaファイルまたはpgAdminと関係するかもしれないと思いますが、どのように動作するのか分かりません。

ヘルプははるかに高く評価されるだろう、おかげで

答えて

0

:-)あなたは `

 
default: &default 
    adapter: postgresql 
    encoding: unicode 
    pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> 
    timeout: 5000

development: <<: *default database: performance_rails_develop username: postgres password: password pool: 5

test: <<: *default database: performance_rails_test username: postgres password: password

production: <<: *default database: db/production.sqlite3

`

+0

としてあなたのファイルにあなたのPostgresのDBのpassword & usernameを供給する必要があり、あなたは、単にユーザ名を入力することを意味するかとあなたのdatabase.ymlファイルで自分が選択したパスワード? – Robert

+0

いいえ@Robertこのユーザー名とパスワードは、データベースのユーザー名とパスワードです。 –

+1

申し訳ありませんが、私はこのゲームをかなり新しくしています。データベースのユーザー名とパスワードを調べるにはどうすればよいですか? – Robert

関連する問題