jos*_*uel 12 mysql ubuntu windows-subsystem-for-linux
我正在尝试将 HeidiSql 从主机连接到我的 WSL Mysql,但我无法连接它
错误“无法连接到'127.0.0.1'上的Mysql服务器”
也尝试过SSH,但无法连接到服务器
小智 13
默认情况下,MySql 仅侦听 127.0.0.1。如果您使用返回的 IP 地址进行连接(如Permanawsl hostname -I
提到的),那么您需要更改 /etc/mysql/mysql.conf.d/mysqld.cnf 以侦听所有 IP 或您的特定 IP。
通过在 Ubuntu 实例中键入以下内容来编辑您的 MySql 配置:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
更改线路:
bind-address = 127.0.0.1
到:
bind-address = 0.0.0.0
或更改0.0.0.0
为返回的IP wsl hostname -I
。
使用以下命令重新启动 MySql:sudo service mysql restart
由于您的问题是在WSL2 发布之前提出的,我假设您使用的是 WSL1。
您可以直接从 Windows 访问 WSL1 MySQL,但您尝试以错误的方式访问。
在网络类型中,您应该选择MariaDb 或 MySQL(TCP/IP),而不是MySQL (SSH Tunnel)。
检查这个WSL github 问题。保存@edwindijas的powershell脚本并由管理员执行。如果仍然无法访问MySQL并获取access denied for user ... <you-computer-name>.mshome.net
,则需要允许该用户从此访问host
。
例如:假设 root,您需要在 mysql cli 中执行以下命令:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%<you-computer-name>.mshome.net' IDENTIFIED BY '<password>';
或者允许 root 用户从任何主机访问 WSL2 MySQL:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password';
至于我,也在使用 WSL 来制作基于 Web 的应用程序
首先确保 mysql 正在 WSL 上运行,例如sudo service mysql start
然后一旦开始,打开 HeidiSql 并简单地连接到它,这是我的示例
确保 IP 地址是 127.0.0.1,不是任何 IP,也不是您用于连接互联网的 IP
小智 5
我还在 WSL 上托管 mysql-server 并在 Windows 上运行 MySQL 工作台。
归档时间: |
|
查看次数: |
19748 次 |
最近记录: |