远程连接Mysql Ubuntu - 绑定地址失败

时间:2014-11-13 17:13:21

标签: mysql ubuntu

我正在尝试将我的服务器配置为允许远程连接。

根据我的理解,我需要在my.cnf文件中取消注释bind-address 127.0.0.1,然后重新启动mysql。

这没效果。

我也尝试将其更改为bind-address 0.0.0.0。

这也没有奏效。

当我尝试使用SQLpro进行远程连接时,出现以下错误:

MySQL说:无法在'54 .444.33.4'(4)

上连接到MySQL服务器

任何人都可以提供任何其他解决方案吗?

感谢。

1 个答案:

答案 0 :(得分:3)

首先;能够从另一台计算机远程远程访问您的数据库等。您必须提供私有或公共IP,并根据该配置进行配置。在这种情况下,我将告诉您如何在局域网中执行此操作:

使用以下命令执行全新的MySQL安装:

sudo apt-get update
sudo apt-get mysql-server
sudo mysql_install_db
sudo mysql_secure_installation

在最后一个命令中,确定一个密码并按" ENTER"在安装过程中询问的所有其他问题是否为默认设置。

转到并打开终端并输入以下命令:

ifconfig

您将从此处看到路由器为您提供的私有IP,应该是例如:192.168.1.10

获取IP后,打开/etc/mysql/mysql.cnf并将绑定地址更改为您已获得的IP,在这种情况下:

bind-adress= 192.168.1.10

通过

重启服务器
sudo service mysql restart

在这种情况之后,我会给你一些安全提示。绝不允许您的 root 用户远程访问,这只是不安全。键入以下命令,以使另一个管理员用户可以从任何地方访问服务器:

mysql -u root -p

(它会询问你mysql root用户的密码,输入并进入mysql行)

CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
CREATE USER 'username'@'IP ADDRESS' IDENTIFIED BY 'password';

我通常会给远程用户提供SELECT,UPDATE,DELETE,INSERT,但你也可以给予所有权限,我会给你两个命令:

GRANT ALL PRIVILEGES ON *.* TO 'username'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
GRANT SELECT,INSERT,DELETE,UPDATE ON *.* TO 'username'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit;

完成所有这些后,再次重新启动服务,您可以从连接到网络的任何计算机连接到MYSQL服务器。干杯!