我正在使用 MySQL 8,最近需要从同一网络上的另一台 PC 访问它。
我努力了:
- 授予新用户所有权限并将主机更改为“%”
- 将许多不同的 IP 和通配符放入 my.ini 文件中的“bind_address”。
在做第二件事(使用 bind_address)时,我意识到每当我使用特定的 IP(例如 77.102.xx.xx 或 192.168.0.11)时,MySQL 服务就不会加载并会出现此错误:
2019-06-20T00:54:19.751327Z 0 [错误] [MY-010257] [服务器] 您是否已在端口 3306 上运行另一个 mysqld 服务器?
2019-06-20T00:54:19.758702Z 0 [错误] [MY-010119] [服务器] 正在中止
2019-06-20T00:54:21.241137Z 0 [系统] [MY-010910] [服务器] C:\ Program Files \ MySQL \ MySQL Server 8.0 \ bin \ mysqld.exe:关闭完成(mysqld 8.0.16)MySQL 社区服务器 - GPL。
每当我尝试从另一台电脑访问数据库(使用 HeidiSQL)时,都会出现以下错误:
无法连接到‘127.0.0.1’上的 MySQL 服务器(10061)
答案1
如果你需要mysql服务器监听网络连接,最简单的方法是指定
bind-address = 0.0.0.0
这样,它将接受系统本地任何 IP 地址的连接。
当从另一个系统远程访问 mysql 服务器时,您显然需要指定要连接到哪个主机;显然您没有指定,默认是尝试连接到本地运行的 mysql 服务器,即 127.0.0.1。我发现使用 HeidiSQL 指定主机非常容易。使用命令mysql
行客户端时,您可以使用--host=
参数。