当前位置:Gxlcms > 数据库问题 > 客户端不能连接mysql的问题

客户端不能连接mysql的问题

时间:2021-07-01 10:21:17 帮助过:3人阅读

文中的mysql是安装在Linux虚拟机中的,客户端是在物理主机上的dbeaver
有道云笔记直接粘贴过来的,格式太乱,建议查看这个有道云笔记的链接

确保存在可任意地方链接的用户

在Linux中使用以下sql查询

SELECT host, user FROM mysql.user; 

查询结果如下

+-----------+------------------+
| host       | user               |
+-----------+------------------+
| %             | admin            |
| 127.0.0.1 | admin            |
| localhost  | debian-sys-maint |
| localhost  | mysql.session    |
| localhost  | mysql.sys        |
| localhost  | root             |
+-----------+------------------+

需要确保存在如下的结果

+-----------+------------------+
| host      | user             |
+-----------+------------------+
| %         | admin            |
+-----------+------------------+

如果存在的话,则可以使用admin用户进行登录(从任何地方);
如果不存在,那么可以添加一条对应的用户记录具体的grant命令见官网文档

mysql> grant all on yourdb.* to admin@‘%‘ identified by ‘yourpassword‘; //注意这里的yourdb和yourpassword换成自己实际的值   

修改mysql配置文件中的bind-address

如果是使用虚拟机的话,可能还需要查看下绑定的ip问题
使用如下命令

mysqld --verbose --help | grep bind-address

显示结果如下

--bind-address=name IP address to bind to.
bind-address                                                 0.0.0.0

需要确保的是,你的bind-address必须是0.0.0.0
The bind address have to be 0.0.0.0 (which means "every IP addresses") to work.

那么如何去更改这个bind-address呢?
找到你的mysqld.cnf文件,搜索bind-address然后修改
一般Linux中,这个文件在/etc/mysql/mysql.conf.d目录下

参考

参考github的内容(见7楼)

客户端不能连接mysql的问题

标签:修改   直接   查询   word   主机   sel   min   文件中   com   

人气教程排行