在配置完服务器上的 MySQL 后,在准备使用 Navicat 直接连接 MySQL。这时发现无法使用 Navicat 直接通过公网 IP 连接 MySQL。
在这里找到了两种方案解解决。
由于最初是的root用户的用户名为 root@localhost,限制只能本地访问,未授予其他机器的访问权限,因此我们需要通过 SSH 的方式来进行访问。
由于使用的是 SSH 方式访问,类似于你通过 xshell 的SSH登录来操纵你的linux服务器,因此在主机这里只需要写 localhost,密码和用户名均和你使用 linux 服务器登录 mysql 一样。
由于 mySQL 的初始用户 root 的名称变为 root@localhost,意味着限制了本地登录。因此我们需要创建一个用户,并授予权限,时期能够远程登录访问 该过程可以参考博文
# 创建一个新用户,其中 contes 是我的用户名,% 代表可以使用任何机器登录,
CREATE USER 'contest'@'%' IDENTIFIED BY 'password';
# 为用户授予相应的权限
GRANT ALL PRIVILEGES ON *.* TO 'contest'@'%' WITH GRANT OPTION;
# 生效授权
flush privileges;
然后我们便可以直接连接 MySQL 了