Windows版のためにデータベースをMysqlからSqliteに変換

Post date: 2014/07/24 7:51:57

1. yaml_dbを使う

gem 'yaml_db', github: 'jetthoughts/yaml_db'

export RAILS_ENV=productionしておいて、

rake db:data:dump でdb/data.ymlを生成する。

2. 現在のデータベースからschema.rbを作る

rake db:schema:dump

3. config/database.yml で、productionにproduction.sqlite3を使うよう設定する

4. schema.rbからproduction.sqlite3を作る

rake db:schema:load

5. data.ymlをloadする

rake db:data:load

注意: 4の方法でなく、rake db:migrate によりproduction.sqlite3を作ろうとしたが、migrationファイルが散逸しているためか正しいデータベースができなかったようで、rake db:data:loadでエラーになった。mysqlの場合は、rake db:migrateで一応使えるデータベースができるので原因はよくわからない。