救场如救火,一天一个报错,但又是那么巧合

2023年 8月 15日 33.7k 0

念念不忘必有回响,排查问题不要心急,要静,带上耳机一顿思考。错误其实已经百度了,但是总是看不出来什么原因。用百度或许要先给百度拍错。

第一天开发发来问题

现象1: 报错1

开发:这个是ETL的报错,ETL工具是informatica。当天凌晨两点一直报错(把调度重新执行就可以了),到早晨之后MySQL就很慢。

[unixODBC][MySQL][ODBC 5.3(w) Driver]Lost connection to MySQL server at 'reading initial communication packet',

mysql的报错可以在mysql的error文档中找到:

https://dev.mysql.com/doc/

搜索方法是这样的

查到如下问题

英文版

然后看mysql的errorlog

这里问了一个朋友说是java用了已经弃用的tlsv1.1协议造成的,错误的连接,注意是错误的连接。

开发:只是在两点开始报错,informatica工具没有做过更改。这就有点难了。MySQL我没做过更改,informatica开发没做过更改。并且报错是从两周前才开始的

于是看了下mysql的errorlog发现

[Warning] Accepted a connection with deprecated protocol 'TLSv1.1' for account `userk`@`%` from host `1.1.1.2`. Client supplied username `user`

这个报错其实从安装就有了,于是怀疑是不是错误数状态达到了一定值。(后来想了想,错误达到一定程度的报错是另外的,如现象2:报错2)

后来反复阅读错误,我发现官网说是尝试使用经典MySQL协议连到X协议,意思是尝试,应该是informatica尝试来着。但是以前为啥没尝试呢,在看看mysql能不能关闭一些协议吧

再来说执行慢的

总结:第三天在思考的时候我怀疑是因为informatica在两点断开了,然后再开启同步导致了informatica在早晨同步数据导致的。

通过收集信息,iotop发现每秒的读有50M以上,iowait 10%以上,登录服务器都缓慢了。

从慢日志了抓出来一个100秒的SQL优化了下,SQL走了个错误的索引。force index(index_name很快)

忘记用iohigh.sh去抓IO高的SQL了。当时开发发来一个错误,我一直以为错误一直存在,我就想着先处理问题。

第二天开发又发来问题

现象2:报错2

Caused by: io.debezium.DebeziumException: Error reading MySQL variables: null, message from server: "Host '1.1.1.1' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'"

这里说的是%的主机名被阻塞了,1.1.1.1虽然在mysqlerrorlog里没有报错,但是他匹配的是%,并且1.1.1.2(现象1: 报错1中的IP)一直有错误,他俩都是通过匹配%连接mysql的,通过msyql.user可以看到

官网地址: https://dev.mysql.com/doc/refman/5.7/en/host-cache.html

好像从这里看不出来什么,但是结合报错1可以发现问题。

第三天,开发又发来问题

现象:

直接官网是没有了

百度看了看让加skip-name-resolve,禁用DNS解析,官网看了参数,需要重启,于是想通过在/etc/hosts中加入应用对方的/etc/hosts,奈何应用服务器没有自己的hosts,并且写了MySQL的hosts。

看到一篇官方dns的文章,应该是解析错误了

https://dev.mysql.com/doc/refman/5.7/en/host-cache.html

https://dev.mysql.com/doc/refman/5.7/en/performance-schema-host-cache-table.html    ---关于host_cache每个列的解释

下次遇到问题的时候先查询下

select * from performance_schema.host_cache where IP = '1.1.1.3'G

这里可以看到解析确实失败了,但是还没找到为什么

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论