mysql插入数据的吞吐量是多少?
网友回复
可以采用批量插入来提供系统吞吐量
1、首先计算单条sql记录插入的sql大小
varchar(10)代表可以存储10个字符,不管是英文还是中文,最多都是10个,这部分假设存储的是中文,在utf-8mb4下,10个中文占用10*4 = 40个字节那么一行数据最多占用:4+4+4+40 = 52字节
my.ini里有max_allowed_packet这个参数控制通信的packet大小。mysql默认的sql语句的最大限制是1M(mysql5.7的客户端默认是16M,服务端默认是4M),可以根据设置查看。官方解释是适当增大max_allowed_packet参数可以使client端到server端传递大数据时,系统能够分配更多的扩展内存来处理。
官方手册:https://dev.mysql.com/doc/refman/5.7/en/server-system-variables.html
查看服务器上的参数:
mysql> show variables like '%max_allowed_packet%'; +--------------------------+------------+ | Variable_name | Value | +--------------------------+------------+ | max_allowed_packet | 33554432 | | slave_max_allowed_packet | 1073741824 | +--------------------------+------------+2 rows in set (0.00 sec)
33554432字节 = 32M ,也就是规定大小不能超过32M。2、计算一次能插入的最大行记录
1M计算的话,(1024*1024)/52 ≈ 20165,为了防止溢出,最大可一次性插入20000条(根据自己的配置和sql语句大小计算)。那么32M的话就是:20000 *32 = 640000也就是64W条。 个人感觉,最佳大小是max_allowed_packet的一半,也就是极限能插入64W,选用32W也许性能会更好一些,同时也不会对mysql的其他操作产生太大的影响。
如果对uniapp打包生成的ios安装包ipa进行混淆加密加壳保护?
局域网中多台电脑如何不插拔usb实现鼠标键盘共享?
nc如何实现反向shell?
ai如何根据别人朋友圈拍摄的照片获取经纬度信息?
如何将llama3接入Siri?
js如何获取浏览器canvas指纹?
如何使用用js写一个字符串位移加密传给后端php解密?
Selenium打开网页模拟点击页面按钮的e.trusted是true吗?
听说Gemini 1.5 Flash能根据你的录屏操作网页视频生成Selenium代码?
coze Webhook URL发送触发器报错:{"code":41001004,"data":{"items":[]},"items":[],"message":"RecordNotFound:Pl