0

Rails 3.2 の開発環境を使用して作成し、入力したデータベースがあります。git と phusion パッセンジャーを使用して、データベースをサーバーにデプロイしました。現在、サーバーはまだ開発データベースを実行しています。これは、データが取り込まれているためです。2 つの質問があります。

1) サーバーを本番環境に切り替えた場合、すべてのデータは移行されますか? そうでない場合、現在のデータを本番データベースに転送するにはどうすればよいですか?

2) 開発データベースを使用して個人のマシンからサーバーに更新をプッシュし、サーバーが運用データベースを使用している場合、ユーザーが運用データベースに入力したすべてのデータはそのまま残りますか? または、プロジェクトを git からサーバーにプルするときにデータを消去しないように構成する必要がありますか?

4

2 に答える 2

0

1) サーバーを本番環境に切り替えた場合、すべてのデータは移行されますか? そうでない場合、現在のデータを本番データベースに転送するにはどうすればよいですか?

通常、デフォルトではそうではありません。database.yml ファイルには、開発、テスト、および本番用のグループがあります。開発とテストはローカルで行われる傾向があり、本番環境は (できれば) ローカル マシンにはありません。

2) 開発データベースを使用して個人のマシンからサーバーに更新をプッシュし、サーバーが運用データベースを使用している場合、ユーザーが運用データベースに入力したすべてのデータはそのまま残りますか? または、プロジェクトを git からサーバーにプルするときにデータを消去しないように構成する必要がありますか?

実際のデータはそのままにしておく必要がありますが、移行がそこにあるデータと互換性があることを忘れないでください。ここで注意すべき重要な点の 1 つは、以前のレコードの再入力を行わずに、既存のテーブルに必須フィールドを追加することです。これにより、展開が中断されます。

環境のリソースを使用して、本番環境からデータベースを取得/返送できます(Herokuはpg:dumpを使用していると思います)。

GhostRiderの回答に対するコメントをWRTしてください。開発からリモートで本番DBを使用していますか?/展開はどこですか? database.yml ファイルはどのようなものですか? (パスワードを含めないでください:D、返信時に回答を更新します)。

于 2014-02-18T17:14:55.827 に答える