相关文章推荐
含蓄的饭盒  ·  OceanBase经分业务抽数 ...·  1 周前    · 
很拉风的西红柿  ·  Resource.Attribute.Use ...·  7 月前    · 
任性的风衣  ·  Your file appears not ...·  8 月前    · 
失落的皮蛋  ·  使用适用于 IIS 的 PHP ...·  1 年前    · 
唠叨的棒棒糖  ·  Day.js实战 - 掘金·  2 年前    · 

事件背景:由于省库压力较大,业务连接弱读节点时,偶尔忘记加弱读参数后仍会路由到主,导致生产故障,对省库搭建备库后,经分抽数类业务迁移到备库

搭建完毕备库后,经分业务根据提供的连接串无法抽取文件,业务报错如下,通过如下报错信息搜索了下官网,给出修改sessionVariables = net_write_timeout = xxx,测试修改后仍报错

????????????????????????? Error:(conn=25216) unexpected end of stream, read 0 bytes from 4 (socket was closed by server)

与业务沟通后,分析配置文件并观察后台报错信息,发现如下报错,设置全局弱读报错

业务之前的设置的变量为全局修改弱读

直接设置全局变量,在备库上是报错的

建议业务将set @@ob_read_consistency='weak'修改为set session ob_read_consistency='weak'; 再次执行抽取进程后,正常抽取数据。

后面也没有继续分析,估计原因就是当连接到数据库后,执行set @@ob_read_consistency='weak',后面的SQL就没有办法执行了,直接回话退出。