#!/bin/bash
export PATH
basepath=datasql
mkdir tmpsqls
cd $basepath
tablesqllist=(`ls -l *.sql | awk '{print $9}'`)
cd ..
for tablesql in ${tablesqllist[*]}
do
split -d -a 6 -l 3500 ${basepath}/${tablesql} tmpsqls/${tablesql}.
cursor=0
sqllist=(`ls -l tmpsqls/${tablesql}.* | awk '{print $9}'`)
count=${#sqllist[*]}
for sqlfile in ${sqllist[*]}
do
joblist=($(jobs -p))
while (( ${#joblist[*]} >= 30 ))
do
{
sleep 0.1
joblist=($(jobs -p))
}
done
echo $sqlfile " " $cursor " / " $count
mysql -uroot -ppwd -h 10.10.10.11 -P 3306 -Ddb1 < $sqlfile &
if [[ $cursor -eq 0 ]];then
sleep 5
else
sleep 0.2
fi
cursor=`expr $cursor + 1`
done
#exit
done
没有合适的资源?快使用搜索试试~ 我知道了~
主要介绍了通过Shell脚本,切割大文件后模拟“多线程”执行数据库脚本,需要的朋友可以参考下
共1个文件
sh:1个
需积分: 3 0 下载量 147 浏览量
2023-07-21
11:33:58
上传
评论
收藏 483B RAR 举报
温馨提示
shell 切割大文件,然后“多线程”执行脚本,快速执行脚本,让自己可以有更多宝贵的时间去做其他有意义的事情。
资源推荐
资源详情
资源评论
收起资源包目录
importSQL.rar (1个子文件)
importSQL.sh 894B
共 1 条
- 1
资源评论
CHENXUGANG
- 粉丝: 5
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功