#!/bin/bash
#每次插入数据量的随机数组及数组长度
insertDataCountArray=(100 500 1000 1500 2000)
insertDataNum=${#insertDataCountArray[*]}
#名字的随机数组及数组长度
nameArray=(LiSi ZhangSan WangWu SunLiu)
nameNum=${#nameArray[*]}
#年龄的随机数组及数组长度
ageArray=(10 20 30 40 50 60 70)
ageNum=${#ageArray[*]}
#性别的随机数组及数组长度
sexArray=(male female)
sexNum=${#sexArray[*]}
#历史总共插入数
insertTotalNum=0
while [ "1" = "1" ]
do
i=1;
#本次插入数据量
MAX_INSERT_ROW_COUNT=${insertDataCountArray[$((RANDOM%insertDataNum))]}
while [ $i -le $MAX_INSERT_ROW_COUNT ]
do
#获取名称 年龄 性别随机值
nameValue=${nameArray[$((RANDOM%nameNum))]}
ageValue=${ageArray[$((RANDOM%ageNum))]}
sexValue=${sexArray[$((RANDOM%sexNum))]}
insertSql="insert into user_test (name,age,sex,create_time) values ('$nameValue',$ageValue,'$sexValue',NOW());"
echo 'sql is:'$insertSql
#执行插入命令
mysql -uroot -p123456 test -e "insert into user_test (name,age,sex,create_time) values ('name$nameValue',$ageValue,'$sexValue',NOW());"
i=$(($i+1))
done
d=$(date +%M-%d\ %H\:%m\:%S)
echo 'this batch data insert has finished! now is :'$d
echo 'this insert total count:'$MAX_INSERT_ROW_COUNT
insertTotalNum=$(($insertTotalNum+$MAX_INSERT_ROW_COUNT))
echo 'insertTotalNum : '$insertTotalNum
echo 'sleep 60s'
sleep 60
done
exit 0