最近为生产MYSQL数据库新增用户及授权,之前进行登录测试,发现总是报错:

Navicat提示报错:2013 - Lost connection to server during query

这个错误的信息太少,一时间难以定位问题。

后来改用HeidiSQL登录,提示:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
[Window Title]
错误

[Content]
连接建立后立即关闭。这可能因服务器变量“init_connect”有错误导致,或者你的用户账号不具备运行它所需的权限。

你可以请求具备SUPER权限的数据库用户
* 修正"init_connect"变量内容
* 或者为你授权需要的权限。

[确定]

这就很清楚了,这与我们使用init_connect来开启审计日志有关,这个用户没有配置访问审计日志库表的权限,用户登录后插入审计表报错导致退出,只要为该用户加上审计日志表的select和insert权限即可解决。参考文章:MySQL基于init-connect实现审计功能