ミッションたぶんPossible

どこにでもいるシステムエンジニアのなんでもない日記です。たぶん。

MySQLの特定のDB、テーブルから件数を指定してdumpを取得する方法


 ちょっと分からなくて調べたので。忘れないようにメモメモ。

$ mysqldump -h [DBホスト名] -u [DBユーザー名] -p -t [DB名] [テーブル名] --where="true limit [出力したい件数]" > [出力ファイル名]


 「--where」指定に続くのは、普通は条件指定を書くんですが、それを「true」で無視しておいて、「limit」指定で必要件数分取ってくる、といった内容になっています。今回は「本番サーバからテスト環境にデータを引っ張ってきたいけど、データが多過ぎるので件数を区切って持ってきたい」というような意図があってやりましたが、その他のシチュエーションだとあんま使わないかもですねw。


 取得したdumpは以下のように取り込みましょう。

$ mysql -h [DBホスト名] -u [DBユーザー名] -p[パスワード] [DB名] < [dumpファイル]