前提・実現したいこと
ローカル開発環境のruby(ruby on rails)で使っているデータベースを
sqlite3からmysqlに中身も一緒に完全移行させたいと考えています。
現状では、
railsのdevelopmentで使うデータベースはsqlite3からmysqlになり、
データベースのスキーマ(テーブルやカラムや外部キーなど)だけ
再現された状態にすることはできました。
しかし、
sqlite3の中身(レコード)をmysqlに入れるやり方がわからなくて困っています。
どうすれば、異なるデータベースのレコードを移行させることができるのか
教えて頂ければ幸いです。
試したこと
#mysqlへの接続情報。 #railsapp/config/database.yml development: adapter: mysql2 encoding: utf8 database: railsapp pool: 5 username: root password: host: localhost
DB Browser for SQLite(sqliteのGUI管理ツール)で、移行前のsqlite3の中身を
back_development.sqlという名前の
sqlファイルとしてエクスポートしました。
sqlをどこに置いていいのかわからなかったので、
とりあえず、railsアプリ内のdbフォルダに配置。
/home/vagrant/railsapp/db
コマンドプロントで
rails db
と打ち込みmysqlを呼び出し、
railsappという名前のmysqlデータベースにback_development.sql入れようと
以下のコマンドを入力しました。
mysql -u root -p railsapp < back_development.sql
どうやらうまくいかなかったようで、エラーも何も表示もなく、
mysqlの中身を確認しても空のままになっています。
補足情報(FW/ツールのバージョンなど)
sqlite3 3.20.0
mysql5.6.93
Rails 5.1.3
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。