先造数据写入txt,然后使用mysql的load data infile来直接将txt中的数据导入表中

#!/bin/bash
for a in {1..12}
do
date
echo ${a}begin...
mysql -D yourDbName -u root -p123456 -e "load data infile '/home/mysql/order.txt'   into table order   fields terminated by '|' OPTIONALLY ENCLOSED BY '\"';"
sleep 3
done

文本类似

"2018-8-20 11:23:54"|"550"|"550"|"1"|"营业厅"|\N|\N|"300000"|"2018-8-21 12:40:14"|"0"
 

如果要精确插入条数可以提前计算需要的条数,然后split切分出需要的条数之后再load到表中split -l 10000 order.txt -d -a 4 order_

更多推荐