You can push your local DB to your Heroku app using the taps gem. The command is:
heroku db:push
This works fine for me except for when pushing binary data.
The data gets changed. For example here are the first few chars on my binary data locally: \x89PNG\r\n\x1A\n\x0
and here is it on heroku after being pushed: x89504e470d0a1a0a000
It seems like maybe the encoding gets lost, or the data gets unscaped.. I am not really sure.
My local db is Sqlite3 and remote is Postgres, but it works for everything else. I tried using Postgres locally and remotely.
I tried running with the --debug flag, but non of the output seemed to suggest any clues.
Has anyone figured this out?