MySQLの条件指定dump

SQL

MySQLの条件指定dump

dumpを取りたいとき、lock tables 権限がない場合 --skip-lock-tablesをコマンドに記載すると、where句の条件が反映されません。

DBの形式がInnoDBであればsingle-transactionを利用すれば大丈夫だと思いますが、これで出来ない場合は無理なので権限をもらうか、権限をもっているユーザーにやってもらいましょう。

下記のコマンドは指定した条件のダンプを作成し、それをdump.sqlファイルとして出力しています。

/usr/local/mysql/bin/mysqldump --single-transaction -u user-name -ppassword -h test-dbname db-schema table_name --where "update_time < '2016-01-01'" > dump.sql

 

  • この記事を書いた人

朝倉卍丸

シングルモルトスコッチなどのお土産を持ってきた人を助けるのが好きです。まあ、昔ながらの方法でやりたいこともありますよね。

-SQL