【发布时间】:2021-10-21 07:32:35
【问题描述】:
我在我的 2011 macbook pro 上运行 mysql 工作台。我用它连接到远程 ubuntu 服务器上的 mysql 数据库。我能够从我的 macbook pro 连接到远程服务器上的 mysql 数据库没有问题,直到我不得不在我的 mac 上进行硬重启。之后我会收到以下错误。
但是,一旦我在我的 mac 上为指定的用户使用以下命令转发端口,它就可以使用 mysql workbench 连接到远程服务器上的数据库。这告诉我们从我的 mac 连接到远程服务器上的数据库的问题是什么?我宁愿不为我想从我的 mac 登录的每个用户移植。有没有人建议如何解决这个问题?
命令:
ssh -N -f -L localhost:3306:localhost:3306 username@192.168.50.122
上一个错误:
Failed to connect to MySQL at xxx.xxx.xx.xxx:3306 with user username Access denied for user 'username'@'xxx.xxx.xx.xxx' (using password: YES)
更新:
当我尝试使用 IP 地址查找用户名的授权时,我没有找到它们并收到下面的错误消息。当我尝试查找 sql_show_grants 表时,我收到另一条错误消息。当我尝试使用 '%' 查找相同的用户名时,我会在下面找到所有授权。那么用户仍然无法从任何IP连接是否有意义?我还有什么需要做的吗?
show grants for 'username'@'xxx.xxx.xx.xxx';
ERROR 1141 (42000): There is no such grant defined for user 'username' on host 'xxx.xxx.xx.xxx'
SELECT sql_grants FROM common_schema.sql_show_grants;
ERROR 1049 (42000): Unknown database 'common_schema'
show grants for 'username'@'%';
+--------------------------------------------------------------+
| Grants for username@% |
+--------------------------------------------------------------+
| GRANT USAGE ON *.* TO `username`@`%` |
| GRANT ALL PRIVILEGES ON `finances`.* TO `username`@`%` |
| GRANT ALL PRIVILEGES ON `geographical`.* TO `username`@`%` |
| GRANT ALL PRIVILEGES ON `realestate`.* TO `username`@`%` |
| GRANT ALL PRIVILEGES ON `sandbox`.* TO `username`@`%` |
| GRANT ALL PRIVILEGES ON `stocks`.* TO `username`@`%` |
+--------------------------------------------------------------+
【问题讨论】:
标签: mysql macos mysql-workbench ubuntu-server