2

Windows7 マシンで開発データベースを使用してRails 3.2.13アプリを開発しました。PostgreSQLアプリをherokuにプッシュすることに成功しました。しかし、現在、既存のデータを Heroku に移行するプロセスに行き詰まっています。

Heroku のドキュメントに従ってみましたが、うまく動作しません。

これまでに行ったことは次のとおりです。

  1. PG Backups heroku アドオンをインストールしました
  2. コマンドで開発データベースのダンプファイルを作成しました pg_dump -Fc --no-acl --no-owner -h localhost -U user myapp_development > myapp_development.dump
  3. ダンプファイルを AWS S3 にアップロードしました

現時点では、ダンプ ファイルを復元して Heroku の本番データベースに変換する方法がわかりません。誰でも助けてもらえますか?

PS私もheroku db:pushコマンドを試しましたが、次のエラーが発生しました:

データベースへの接続に失敗しました: Sequel::AdapterNotFound -> LoadError: そのようなファイルを読み込めません -- pg

4

3 に答える 3

1

S3 にダンプ ファイルをアップロードしたので、pgbackups にそのダンプをロードするように指示する必要があります。

次のようなことを試してください:

$ heroku pgbackups:restore DATABASE_URL 'https://s3.amazonaws.com/mybucket/path/to/myapp_development.dump'

ここでそのコマンドを見つけました: https://devcenter.heroku.com/articles/heroku-postgres-import-export

編集:

DATABASE_URL文字通り動作するはずです。ただし、データベースを指定したい場合は、 を使用heroku pg:infoしてデータベースの名前を調べることができます。

私にとって、heroku pg:info印刷:

=== HEROKU_POSTGRESQL_COPPER_URL (DATABASE_URL)
Plan:        Basic
Status:      available
Connections: 1
PG Version:  9.1.9
Created:     2013-03-06 17:21 UTC
Data Size:   9.5 MB
Tables:      9
Fork/Follow: Unsupported

したがって、私の場合は次を使用します。

$ heroku pgbackups:restore HEROKU_POSTGRESQL_COPPER_URL 'https://s3.amazonaws.com/mybucket/path/to/myapp_development.dump'
于 2013-08-02T05:07:19.410 に答える
1

すべての gem がシステムにインストールされていることを確認してください。

sudo apt-get install sqlite3 libsqlite3-dev
sudo gem install sqlite3-ruby

gem install heroku taps sequel

sudo gem install tabs

sudo heroku db:push

また

sudo heroku db:push –config herokuServerName

それでも問題がある場合。以下のコマンドを使用

heroku db:pull postgres://root:@localhost/db_name

そうしないと

sudo heroku db:pull --confirm herokuDomanName postgres://userName:@localhost/Locadatabase

root はデータベースのユーザー名、db_name はデータベース名です。

幸運を.........!!

于 2013-08-02T05:07:52.713 に答える