heroku shared dbのバックアップ

  • OSX 10.7.2
  • ruby 1.8.7 (2010-01-10 patchlevel 249) [universal-darwin11.0]

herokuの共有DBのバックアップをとろうと「heroku db:pull」を実行したらエラーになった。

$ heroku db:pull sqlite://20111126.sqlite

Taps Load Error: no such file to load -- taps/operation
You may need to install or update the taps gem to use db commands.
On most systems this will be:

sudo gem install taps

tapsをインストールしろとのことなので、インストールする。

$ sudo gem install taps

インストールしたのに、まったく同じエラーが表示される。
sqliteをアップグレードしてみる。

$ sudo gem update sqlite3 sqlite-ruby

まだエラー。
railsもインストールしてみる。

$ sudo gem install rails

このコマンドを実行したところ返答がまったくない。
一度キャンセルし、gemをアップデート

$ sudo gem update --system

再度「sudo gem install rails」を実行したら、すぐに返答があって無事インストール完了。
しかし、まだ「db:pull」するとエラーはでる。
herokuコマンドはheroku-toolbelt.pkgをインストールしたやつだったので、
gemでherokuをインストールしてみる。

$ sudo gem install heroku

ようやくバックアップが成功した。

$ heroku db:pull sqlite://20111126.sqlite
Loaded Taps v0.3.23
Warning: Data in the database 'sqlite://20111126.sqlite' will be overwritten and will not be recoverable.

 !    WARNING: Potentially Destructive Action
...