チームで開発していると、部分的にデータベースをマージしたい状況があるかと思います。軽く日本語でググっても出てこなかったので、メモ。
-
su - ユーザ名
(パスワード忘れた時はrootで入って、su ユーザ名
) -
pwd
でパスを確認する - Finderなどで確認したパスに移動し、「情報をみる」>(ロックを解除し、該当フォルダに対してsuで指定したユーザ名の読み書き権限を付与)
- ターミナルからコマンドを打つ
pg_dump --table=テーブル名 --data-only --column-inserts データベース名 > ./出力ファイル名
- ```pwd``で確認したパスにsql文が生成されます
- 必要に応じて、ユーザに付与した読み書き権限を元に戻す
追記
- serialにしているカラムについては、そのままInsertするとトラブルが起きるはずなので、テキスト置き換えの作業は必要。外部キーも同様。