错误日志级别为3
MYSQL版本 | log_error_verbosity | 难易程度(共5级) | 是否可模拟 |
---|---|---|---|
8.0/5.7 | 3 | 2 | 是 |
log_error_verbosity Value | Permitted Messages |
---|---|
1 | Error messages |
2 | Error and warning messages |
3 | Error, warning, and information messages |
日志中出现大量的连接问题: 2023-05-20T02:26:47.012121Z 207 [Note] [MY-010914] [Server] Aborted connection 207 to db: 'unconnected' user: 'u1' host: 'ddcw21' (Got an error reading communication packets)
我们一般遇到note都不太管....
其实这个信息很好理解, 就是客户端异常断开了. 分两种情况:
1. 客户端/应用异常掉线, 比如被kill -9了
2. 网络问题
mysql连接退出的时候会发送quit包给server,(包括quit,或者ctrl+D退出), 如果没有发送给包给server就断开了就会出现这个note
可以使用我们之前写的mysql流量镜像脚本观察
一字节的1 就表示退出
1. 日志里面提供了异常断开的客户端的IP地址, 可以根据IP地址找到对应的应用/客户端, 看下它究竟在干啥...
2. 眼不见心不烦. set global log_error_verbosity=2;
kill -9 `pidof mysql` #kill -9 客户端进程IP就行
可以使用我之前讲mysql连接协议时的脚本, 也可以使用pymysql之类的现成的工具.
import pymysql
for x in range(100):
conn = pymysql.connect(
host='127.0.0.1',
port=3314,
user='root',
password='123456',
)
一般我们遇到这个note都是不管的, 毕竟又不是报错, 甚至都不是warning. 非要找原因的话就是网络/应用的问题.
应用多数都是使用的长连接, 一般不会出现这种问题, 那么就大概率是开发测试的时候连接没有释放(close()), 就一直连接(connect). 频繁的建立连接是有很多额外开销的, 还是得找到该应用,然后去处理(打一顿 -_-)
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。