在Ubuntu上配置MySQL以允许远程访问涉及几个步骤。以下是一个详细的指南:
如果你还没有安装MySQL服务器,可以使用以下命令进行安装:
sudo apt update
sudo apt install mysql-server
编辑MySQL的配置文件 /etc/mysql/mysql.conf.d/mysqld.cnf(在某些版本中可能是 /etc/mysql/my.cnf),找到并注释掉或修改以下行:
bind-address = 127.0.0.1
改为:
bind-address = 0.0.0.0
这允许MySQL监听所有网络接口。
保存文件并重启MySQL服务以应用更改:
sudo systemctl restart mysql
登录到MySQL服务器:
sudo mysql -u root -p
在MySQL提示符下,创建一个新用户并授予远程访问权限。例如,创建一个名为 remote_user 的用户,并允许从任何IP地址访问:
CREATE USER 'remote_user'@'%' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON *.* TO 'remote_user'@'%';
FLUSH PRIVILEGES;
EXIT;
如果你只想允许从特定IP地址访问,可以将 '%' 替换为特定的IP地址,例如 192.168.1.100。
确保你的防火墙允许MySQL端口(默认是3306)的流量。如果你使用的是 ufw,可以运行以下命令:
sudo ufw allow 3306/tcp
从另一台机器上尝试连接到你的MySQL服务器,使用新创建的用户和密码:
mysql -h your_server_ip -u remote_user -p
如果一切配置正确,你应该能够成功登录。
通过以上步骤,你应该能够在Ubuntu上成功配置MySQL以允许远程访问。