要使MySQL支持远程连接,需要进行以下操作:
修改MySQL配置文件(通常是my.cn.cnf或my.ini),注释掉bind-address这一行,或者将其值设置为0.0.0.0,这样MySQL就能监听所有网络接口。
进入以下目录
cd /etc/mysql/mysql.conf.d
查看目录下的文件如下:mysqld.cnf mysql.cnf
ls
编辑mysqld.cnf
vi mysqld.cnf
#bind-address = 127.0.0.1
bind-address = 0.0.0.0
# mysqlx-bind-address = 127.0.0.1
mysqlx-bind-address = 0.0.0.0
或者注释掉这两行
# bind-address = 127.0.0.1
# mysqlx-bind-address = 127.0.0.1
重启MySQL服务以使配置生效。
sudo systemctl restart mysql
授予远程用户权限连接到MySQL服务器。以下命令创建一个新用户,并赋予权限从任何主机连接到MySQL服务器:
CREATE USER '用户名'@'%' IDENTIFIED BY '你的密码';
GRANT ALL PRIVILEGES ON *.* TO '用户名'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
确保服务器的防火墙允许外部访问MySQL的端口(默认是3306)。
如果你在使用云服务,确保安全组或网络访问控制列表(ACLs)允许远程连接到MySQL端口。
现在,你应该能够从远程机器使用如下命令连接到MySQL服务器:
mysql -h <MySQL_server_IP> -u root -p
请确保替换<MySQL_server_IP>为你的MySQL服务器的IP地址,并在提示时输入正确的密码。