目前在用MyCat做批量插入时,写数据失败,报错信息如下:

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
批量insert的实现方式:
修改前:
insert into table (xxx) values(value1);
insert into table (xxx) values(value2);
修改后:
insert into table (xxx) values(value1),(value2);
将批量插入的语句改成这种MySql风格的values方法就可以了。
对于多个insert的方式,应该是MyCat多个任务处理有问题,MySql的批量方式只有一条sql,避开了多条sql同时更新同一条数据的情况。所以使用MyCat要规避背靠背更新同一条数据。
解决MyCat批量插入数据失败的问题,通过将多个独立的INSERT语句合并为一条包含多个值列表的INSERT语句,避免了多任务处理冲突,提高了数据写入效率。

909

被折叠的 条评论
为什么被折叠?



