Transition Between Database Adapters in Rails

Transitioning from one database to another, or even to a whole new database with a new adapter, can be tough. Here's an easy way to transition content.

For whatever reason, you might just need to transition your Rails app's content from one database type to another (or even just to a new database with the same adapter). I've found that yaml_db does a great job helping you with this task.

The first thing to do is get yaml_db installed.


gem 'yaml_db'

Then bundle.

$ bundle install

To dump the data, just run the appropriate rake task.

$ bundle exec rake db:data:dump

Then, switch your database over to the new database. Note: If you're switching adapters, make sure you have the appropriate gem(s) installed.

You'll need to make sure your database is setup. If it isn't, then get on it!

$ bundle exec rake db:create
$ bundle exec rake db:migrate

And then you can bring the data into the new database.

$ bundle exec rake db:data:load

Nice and easy! Be sure to note that if you're doing this to move content, then you may need to go through additional steps to move any uploaded assets.


Let's Connect

Keep Reading

Rails has_many :through Polymorphic Association

How to maintain HMT behavior on a polymorphic association.

Oct 13, 2014

Use Slack For Rails Error Notification

Post a message to one of your Slack channels when your Rails app encounters a 500 error.

Dec 22, 2015

Access A Deleted Class In A Rails Migration

Sometimes you need to get to a class that you have deleted or renamed within a migration file. Here's how you do it.

Mar 13, 2016