アプリケーション開発ポータルサイト
ServerNote.NET
カテゴリー【MySQLUbuntuCentOS
【MySQL/MariaDB】mysqldumpで1行ずつのINSERT出力とCREATE TABLE抑制
POSTED BY
2023-05-30

オプション無しでmysqldumpをすると、CREATE TABLEから始まり、複数の行が1つのINSERT文にまとめられてしまい、エラーが出た場合わかりにくいのでカスタマイズする。

まずテーブル定義文のみを吐き出し保存

mysqldump -u username -ppassword dbname -d > create_table.sql

-dオプションをつけるとテーブル定義文のみを出力する。

次にデータ本体のみをINSERTで1行づつ吐き出し保存

mysqldump -u username -ppassword dbname --no-create-info -c --order-by-primary --skip-extended-insert > data_inserts.sql

order-by-primaryはプライマリキーでソートして出力する。お好みで。

※本記事は当サイト管理人の個人的な備忘録です。本記事の参照又は付随ソースコード利用後にいかなる損害が発生しても当サイト及び管理人は一切責任を負いません。
※本記事内容の無断転載を禁じます。
【WEBMASTER/管理人】
自営業プログラマーです。お仕事ください!
ご連絡は以下アドレスまでお願いします★

【キーワード検索】