本文共 1341 字,大约阅读时间需要 4 分钟。
这部分可能会有点复杂,仔细按照步骤操作即可完毕。首先打开mysql的配置文件,这里可能需要管理员权限才能操作。
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
找到bind-address的设置,确保它不仅允许本机访问,还可以通过阿里云服务器访问。建议将其改为0.0.0.0或者直接设置为阿里云服务器的公网IP。你可以根据实际情况选择最合适的设置。
默认设置为bind-address = 127.0.0.1,这个设置只允许本地访问,和我们的需求不太一样。因此,我们需要将其修改为允许外网访问的IP地址。
修改 bind-address = 0.0.0.0 或者阿里云服务器的公网IP。
记住,阿里云服务器的数据库端口通常是3306,你要确保这个端口在服务器上是开放的。
现在,我们需要登录到mysql数据库并进行必要的权限设置。
mysql -u root -p
输入你的数据库密码。如果你还没有设置密码,可能会直接登录进来。接下来,我们需要授权root用户对数据库进行远程访问。
grant all privileges on *.* to root@"%" identified by "你的数据库密码";flush privileges;exit
这里需要注意的是,root@"%"
表示允许root用户从任何地方(包括外网)访问数据库。你也可以根据自己的需求设置特定的IP地址或域名。
操作完成后,需要重启mysql服务确保新设置生效。
service mysql restart
现在,试着再次登录数据库查看是否能够远程访问。你应该可以通过本地 Navicat 连接到阿里云服务器上的数据库了。
如果在重启服务后仍然无法连接,可能有以下两种情况:
如果你已经能够成功连接到数据库,那么大部分工作也许已经完成了。但是,最好再验证一下数据库用户的权限设置。
use mysql;select host, user from user;
你会发现,用户权限只允许本地访问,如果需要远程访问,可能需要将host
字段更新为%
。
update user set host = '%' where user = 'root';
记得在执行更新语句之前,可能需要有足够的权限,可能需要使用mysql
管理权限命令。
不管如何,这些额外的验证步骤可以帮助确保你可以从任何地方访问数据库,而不仅仅是本地网络。
通过以上步骤,你应该能够顺利地在本地工具如Navicat中连接到阿里云服务器上的数据库了。记住,准备工作充分且耐心是关键。
转载地址:http://dxalz.baihongyu.com/