首页 > 数据库技术 > 详细

客户端不能连接mysql的问题

时间:2018-02-23 22:08:14      阅读:223      评论:0      收藏:0      [点我收藏+]

文中的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的问题

原文:http://blog.51cto.com/1964725/2072477

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!