客户端不能连接mysql的问题


文中的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楼)

转载于:https://blog.51cto.com/1964725/2072477

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值