以下是我在Ubuntu上执行的命令。
$ mysql -u root -p
mysql>GRANT ALL ON my_database.* TO user@'MY_REAL_IP' IDENTIFIED BY 'passwd';
$ sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
#bind-address = 127.0.0.1
$ sudo ufw enable
$ sudo ufw allow 3306
$ service mysql restart
但是当我在Ubuntu上使用另一台计算机访问MY_REAL_IP类型的mysql时:
$ mysql -u user -p -h MY_REAL_IP
无法在MY_REAL_IP'上连接到MySQL服务器
如何解决? THX
答案 0 :(得分:0)
我猜bind-address
应为0.0.0.0
。如果您想使用真实IP地址访问此服务器。或者,您只需使用localhost即可访问MySQL。
请您更改bind-address = 0.0.0.0
,然后重新启动MySQL?
修改强>
它看起来没有网络连接。请找到使用端口3306连接服务器的方法。How to make sure that firewall is off?
答案 1 :(得分:0)
您可能会误解grand
命令,user@host
表示user
可以从host
登录,在您的情况下,应该是another computer's ip
,或者只是对所有ips使用*
答案 2 :(得分:0)
Ubuntu 16.04上的确切路径 /etc/mysql/mysql.conf.d/my.cnf 绑定地址= 0.0.0.0
service mysql restart