mysql - 无法从外部访问 vagrant MySQL 数据库(仅当 vagrant ssh 进入带有 Scotchbox 的盒子时)

标签 mysql vagrant remote-connection

我正在运行 Vagrant & Virtual Box - 我的 Vagrantfile 中有一个 PHP/MySQL 设置,当我通过终端 vagrant ssh 时,我可以使用默认 root 用户直接访问我的数据库,没有任何问题(密码是“root”)

我的 Vagrant IP 是 192.168.33.1,我已将其添加到我的主机文件中以映射到 dev.myworkspace.com

当我运行以下命令访问mysql -h dev.myworkspace.com -u root -p并输入正确的密码(root)时,它返回以下错误:

错误 1045 (28000):用户“root”@“192.168.33.1”的访问被拒绝(使用密码:YES)

我尝试将bind-address = 0.0.0.0添加到vagrant框中的my.cnf文件中,但是当我重新启动mysql时,它挂起。

谁能解释一下我做错了什么?我只是希望能够连接到我的 vagrant MySQL 数据库,尽管是从外部 vagrant ssh (因此需要允许外部连接)

注意 - root 用户已设置如下: 将 *.* 上的所有权限授予“root”@'%'

最佳答案

我发现root用户的权限只设置为localhost

尝试用这个来查询。如果第二个没有给出结果,请尝试更新和**刷新*

SHOW GRANTS FOR  'root'@'localhost';
SHOW GRANTS FOR  'root'@'%';

UPDATE mysql.user
SET Host='%' WHERE Host='localhost' AND User='root';

FLUSH PRIVILEGES;

关于mysql - 无法从外部访问 vagrant MySQL 数据库(仅当 vagrant ssh 进入带有 Scotchbox 的盒子时),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54827712/

相关文章:

javascript - 使用选择框中的值从数据库中获取记录

php - mysql如何对两行进行求和和相乘

php - Mysql通过远程连接DB进行查询

attributes - Chef 不读取属性和定义

linux - vagrant up 时等待机器启动时超时

mysql - 当远程服务器中同时存在 mysql 和 mariadb 时如何连接到 mariadb

node.js - 使用WebSockets(ws)连接到Rcon

c# - 如何提高数据库查询的性能?

postgresql - 无法连接到 PostgreSQL docker 镜像(使用转发端口)

mysql - SQL 查询按以前数据的最高平均值排序