mysqlのダンプ俺メモ

mysqldump --user=USER --password=PASSWORD --single-transaction --extended-insert=false --default-character-set=utf8 --order-by-primary "mydb" "zipcode" > "mydb_dbbk.sql"

    • order-by-primary PKまたは最初のユニークインデックスでソート(Dump each table's rows sorted by its primary key, or by its first unique index)
    • extended-insert=true/false 1行のINSERT文に複数のvaluesを含む/含まない
    • single-transaction テーブルをロックせず、トランザクションの範囲でバックアップ

PKでソートするかしないかで速度的に雲泥の差が出るようです。


あるいはこちらのほうが速い
mysqlコンソール上で INTO OUTFILEする

export
SELECT * FROM `DB名`.`TABLE名` ORDER BY id asc INTO OUTFILE "/tmp/data.csv" FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"';

import
LOAD DATA LOCAL INFILE "C:/Users/XXX/Documents/MySQL/data.csv" INTO TABLE table名 FIELDS TERMINATED BY ',' ENCLOSED BY '"';