首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >MySQL 客户端遇到的一个连接后就断开的问题

MySQL 客户端遇到的一个连接后就断开的问题

作者头像
杨焱
发布于 2021-12-07 20:53:52
发布于 2021-12-07 20:53:52
2.9K0
举报
文章被收录于专栏:杨焱的专栏杨焱的专栏

发表于2017-09-302019-01-01 作者 wind

今天遇到一个MySql client 无法连接的问题,错误是说在init-connect执行失败,找了好长时间,一开始以为是权限问题。后来在网上查询资料,原因是因为设置了  connect-init 的环境变量,作用是用来给SQL审计表(也就是自己指定的一张表)里面保存一条用户的登录记录,这个步骤出了问题。

每次使用帐号登录到mysql客户端,使用任何一条mysq指令,就会立即断开连接,使用root用户登录后,使用下面的命令来查看是否有设置审计功能,后面一条sql是用来设置变量。

代码语言:javascript
复制
mysql> show variables like 'init_connect%';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| init_connect  |       |
+---------------+-------+
1 row in set (0.00 sec

mysql> set global init_connect='insert into db_monitor.accesslog(thread_id,log_time,localname,matchname) values(connection_id(),now(),user(),current_user());';

查看后,我发现是因为insert语句给定的数据库名称不存在,重新修改为正确的数据库名称并给用户设置对应的insert权限后,链接就正常了。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017-09-30,如有侵权请联系 cloudcommunity@tencent.com 删除
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档