MySQL远程访问设置终极方法
在MySQL数据库中,默认情况下只允许本机进行访问,如果需要从其他计算机上访问MySQL数据库,则需要进行一些设置。
以下是MySQL远程访问设置的终极方法:
1. 修改MySQL配置文件
打开MySQL的配置文件 my.cnf 或者 my.ini,路径一般为:/etc/my.cnf 或者 /etc/mysql/my.cnf。
找到以下内容:
[mysqld]
bind-address = 127.0.0.1
将 bind-address = 127.0.0.1 修改为 bind-address = 0.0.0.0 保存文件并退出。
注:以上操作确保MySQL已经正确地监听了任意地址。
2. 创建远程用户并授权
执行以下命令打开MySQLshell:
mysql -u root -p
输入密码进入MySQL命令行界面,然后依次执行以下命令:
CREATE USER '用户名'@'%' IDENTIFIED BY '密码';
GRANT ALL PRIVILEGES ON *.* TO '用户名'@'%';
其中,用户名和密码可自定义,%代表接收来自任意IP的连接请求。
示例说明
示例一
假如我们想要从 IP 为 192.168.1.100 的机器上,使用用户名为 user1,密码为 123456 的用户,访问 MySQL 数据库。
- 在 MySQL 配置文件中,将 bind-address 修改为 0.0.0.0
- 执行以下命令:
CREATE USER 'user1'@'192.168.1.100' IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON *.* TO 'user1'@'192.168.1.100';
通过以上操作,就可以从 IP 为 192.168.1.100 的机器上,使用用户名为 user1,密码为 123456 的用户,访问 MySQL 数据库。
示例二
假如我们想要从 IP 为 10.0.0.100 和 IP 为 10.0.0.200 的机器上,使用用户名为 user2,密码为 123456 的用户,访问 MySQL 数据库。
- 在 MySQL 配置文件中,将 bind-address 修改为 0.0.0.0
- 执行以下命令:
CREATE USER 'user2'@'10.0.0.100' IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON *.* TO 'user2'@'10.0.0.100';
CREATE USER 'user2'@'10.0.0.200' IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON *.* TO 'user2'@'10.0.0.200';
通过以上操作,就可以从 IP 为 10.0.0.100 和 IP 为 10.0.0.200 的机器上,使用用户名为 user2,密码为 123456 的用户,访问 MySQL 数据库。
结论
通过执行以上步骤,就可以配置成功MySQL的远程访问。但是,由于开启这种方式的安全性有一定风险,所以在开启远程访问之前,请务必审慎考虑。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:MySQL远程访问设置终极方法 - Python技术站