记一次降权后,Navicat无法登录的问题

1.登录提示错误:

记一次降权后,Navicat无法登录的问题

2.请教了大神,最终的原因排查下来是因为

init_connect的时候,设置了SET NAMES utf8mb4

init_connect 是可以动态在线调整的,这样就有了一些其他的用处

经过测试init_connect 是用户登录到数据库上之后,在执行第一次查询之前执行 里面的内容的。

如果init_connect 的内容有语法错误,导致执行失败,会导致用户无法执行查询,从mysql 退出。

init_connect 对具有super 权限的用户是无效的
因为降权后,system账户没有SET NAMES utf8mb4的权限。导致init_connect的设置有问题
因为这个设置,是用户登录的时候就会去执行的一个命令。
记一次降权后,Navicat无法登录的问题

3.实际的报错

记一次降权后,Navicat无法登录的问题

4.最后的解决方案

设置init_connect命令: set global init_connect=’’;
就可以拉