背景
お仕事で担当してるシステムにて、DBがもはやmigrateが通らず詰んだオワタ状態だったのでridgepoleに移行してとても幸せな日々を送っております
今回「特定のテーブルは無視したい」ケースが出てきたのでそのオプションをメモがてら。
特定のテーブルを無視するオプション
--ignore-tables
オプションを使って特定のテーブルを無視できます。
正規表現を使えるので、たとえばwp_
から始まるテーブルを無視したい場合は、--ignore-tables ^wp_
とすればOK。
オプションは複数指定できます。
--ignore-tables ^wp_,^hoge,fuga_items
以上です。
ついでによく使うコマンドのおさらい
schemaからDBに流し込む
$ bundle exec ridgepole --config config/database.yml -E development --apply
dry-run
$ bundle exec ridgepole --config config/database.yml -E development --apply --dry-run
DBからschemaを作る
--split
でテーブルごとにファイルを分割できます。
$ bundle exec ridgepole --config config/database.yml -E development --export --output db/schemas/Schemafile --split
wp_
からはじまるテーブルは無視してexport
$ bundle exec ridgepole --config config/database.yml -E development --export --output db/schemas/Schemafile --split --ignore-tables ^wp_