CubicLouve

Spring_MTの技術ブログです。https://github.com/SpringMT (http://spring-mt.tumblr.com/ からの移転)

MySQLに数百万件のテストデータを作る方法

お手軽にMySQLにダミーデータを作る方法です。

INSERT INTO hoge SELECT * FROM hoge; を繰り返す

スキーマ

gist.github.com

(プライマリキーなしというありあえないテーブルで試しています。。。)

結果

gist.github.com

1280000 rows作るのに1分かからないですね。

プライマリキーの重複が起こる場合は、

INSERT INTO :table_name (プライマリキー以外のカラム) SELECT プライマリキー以外のカラム FROM :table_name;

LOAD DATA INFILE

MySQL :: MySQL 5.6 リファレンスマニュアル :: 13.2.6 LOAD DATA INFILE 構文