使用FokJoin框架分批查询MySQL

使用FokJoin框架分批查询MySQL,第1张

CPU是8核。遇到个总数据量2.7亿,in字段万个参数的场景,查询很慢。在in中参数小于等于100时,查询性能良好。于是用Fork/Join优化查询。性能提升明显,对于5万个参数,从超时减少到3秒多。

测试结果:

现记录下抽象逻辑,作为笔记。

mysqldump -u用户名 -p密码 -t -T /var/lib/mysql-files/ 数据库名 表名 --where="筛选条件" --fields-terminated-by=',' --fields-enclosed-by='\"'

参数说明:

-t 不打印表的创建信息

-T 以 txt 文本输出/var/lib/mysql-files/,输出的地址为 show variables like 'secure_file_priv'查询出的

--fields-terminated-by 字段之间以,分割

--fields-enclosed-by 每个字段用“包含

输出的文件在/var/lib/mysql-files/,文件名为表名.txt

for($i=0$i<1000$i=$+100){

"SELECT * FROM tbl_name ORDER BY key_id DESC LIMIT {$i},{$i+100}"

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7680578.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-08
下一篇 2023-04-08

发表评论

登录后才能评论

评论列表(0条)

保存