让Mysql server接受远程访问


一直以来,由于我没做过什么大网站,或者说没把任何网站做大 -_-b 总之我用的LAMP都在一个box里。那么如果把数据库服务隔离出来单独做一个box,该怎么办呢?

首先,修改mysql的配置文件(以mysql 5.0为例):

$ sudo vim /etc/mysql/my.cnf

找到

bind-address            = 127.0.0.1

将127.0.0.1替换为服务器的外部IP,然后存盘退出。

为了避免缓慢的远程连接,还必须在[mysqld]段加上:

skip-name-resolve

下一步是在mysql中为远程用户开启权限:

mysql>GRANT ALL ON your-database.* TO ‘your-user’@’client-name or IP’ [IDENTIFIED BY ‘yourpass’];

mysql>FLUSH PRIVILEDGES;

下一步,要确认firewall为mysql连接让路。以ufw为例:

$ sudo ufw allow 3306

这样简单的开放了3306端口,但没有做任何限制。差不多了吧,从client一端可以测试一下了:

$ mysql -h mysql-server -u your-user  [-p]

🙂

,