2013-03-03 7 views
46

私はHerokuを初めて使用しています。私は、メインデータストアとしてMySQLデータベースを使用する予定のRuby/Sinatraアプリケーションを持っています。ローカルMySQLデータベースをHerokuにデプロイする方法

しかし、私はHerokuのデータベースに直接結果を書きたくありません。その代わりに、結果をローカルデータベースに書き込んで、ローカルデータベースをHerokuの「本番」データベースに簡単に展開/更新/コピーすることができます。

どうすればよいですか?

ありがとうございました。

答えて

45

第1に、Herokuはネイティブにポストグラムを使用します。それをローカルで使用すると、あなたの人生はより簡単になります。ここで説明するように

あなたはインポート/エクスポートすることができPostgresはHerokuのからファイルをダンプ:https://devcenter.heroku.com/articles/heroku-postgres-import-export

あなたが本当にMySQLを使用する場合は、あなたがフォローする二つのパスを持っています。

1)ローカルのMySQLを実行しますが、ここで説明したように、mysql2psqlの宝石を使用してHerokuのに移行する際のpostgresへの変換:https://devcenter.heroku.com/articles/heroku-mysql

2)私の推薦をするだろうしかしhttps://addons.heroku.com/cleardb

のようなMySQLのアドオンを使用しますそれはHerokuに焼き付けられるので、終わりから終わりまでpostgresを使用してください。そして、あなたはHerokuを使用するデフォルトの方法で作業します。

Postgresも非常に良いです!

+0

こんにちはダン、はい、私はきれいなアドオンを使用して探していた。私がpostgresを使用すると、インポート/エクスポートだけで自分のデータベースに書き込めますか?私はまた、DBに直接接続して書き込むことができるいくつかのpostgresルビーの宝石があると推測しています。 – Ken

+0

インポート/エクスポートは上書きされます。私はあなたが何を意味するのかよくわかりません」代わりに、ローカルデータベースに結果を書き込んで、ローカルデータベースをHerokuの「実動」データベースに簡単に展開/更新/コピーできるようにしたい。私はあなたがデータをローカルで作成し、それをHerokuに移すことを意味していましたが、おそらくあなたは何か違うことを意味していました。 – DanSingerman

+0

これは問題ありません。インポート/エクスポートを使用せずにDBに読み書きをしたいのであれば、単に 'pg'宝石を使って接続を作成するだけで正しいのですか?私は読み書きに 'pg'宝石を使う良い例は見つけられません。どんな提案も大歓迎です! – Ken

関連する問題