![连接到本地 MySQL 服务器](https://linux22.com/image/525665/%E8%BF%9E%E6%8E%A5%E5%88%B0%E6%9C%AC%E5%9C%B0%20MySQL%20%E6%9C%8D%E5%8A%A1%E5%99%A8.png)
我正在尝试使用 MySQL Workbench 连接到我的本地 MySQL 服务器。当我这样做时,我收到“无法连接到 MySQL 服务器...”错误。如果我通过 SSH 进入机器并在那里启动 MySQL,我可以正常连接,所以我知道这不是问题。
我需要做一些特别的事情来告诉我的 MySQL 服务器“外部人员”可以连接到它吗?
答案1
确保
mysqld 没有使用 --skip-networking 运行
或 --bind-address = 127.0.0.1
还要确保您已允许客户端访问服务器上的端口 3306(默认),并且没有防火墙。
更多信息和你需要知道的一切MySQL 文档中的此页面。
答案2
是的 – MySQL 身份验证是根据用户名和主机完成的。
最好的办法是创建一个可以从任何主机(%通配符)进行身份验证的管理员用户。
答案3
我在/etc/mysql/my.cnf 中发现以下内容:
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address = 127.0.0.1
为了解决我的问题,我做了两件事:
- 我创建了一个新用户:“admin”@“%”
- 我注释掉了 my.cnf 中的“bind-address”行。
现在它可以工作了。