以用户身份访问 vagrant box 之外的数据库

Access database outside of vagrant box as user

我正在使用 Homestead 并创建了多个数据库。我现在想为我创建的每个数据库使用一个新的 username/password 组合。我是这样做的

CREATE DATABASE testdb CHARACTER SET utf8;
CREATE USER 'testuser'@'localhost' IDENTIFIED BY 'testpassword';
GRANT ALL PRIVILEGES ON testdb.* TO 'testuser'@'localhost';

现在,当我通过 vagrant ssh 访问我的 vagrant box 然后使用这个命令时

$ mysql -utestuser -ptestpassword

我可以连接到数据库。但是,当尝试从外部访问数据库时(例如通过客户端 (Sequel Pro)),我无法使用创建的用户连接到数据库。

不过,我可以连接到我的 "base account" homestead:secret。使用 homestead 用户我可以访问每个数据库,但是我想使用我新创建的用户。我将如何实现这一点?

来自 Sequel Pro 的错误是

Access denied for user 'testuser'@'10.0.2.2' (using password: YES)

这是数据库连接配置

您还必须向外部用户授予访问权限:

CREATE USER 'testuser'@'10.0.2.2' IDENTIFIED BY 'testpassword';
GRANT ALL PRIVILEGES ON testdb.* TO 'testuser'@'10.0.2.2';