使用Navicat连接管理远程linux服务器上的mysql数据库

本文介绍如何利用Navicat SSH通道功能,通过服务器上的SSH连接,将服务器地址设为127.0.0.1,使Mysql将连接视为本地地址,从而解决ADSL上网环境下IP不固定导致的无法远程登录Mysql的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

通常情况下,为了安全起见,我们的Mysql会禁止除本地以外的所有IP登录,当然,你可以通过添加客户端IP来解决,但是我们的ADSL上网,IP是不固定的,每次管理数据库都要重新添加IP。

解决方法很简单,其实Navicat支持SSH通道,通过服务器上的SSH连接,再把服务器地址设为127.0.0.1,Mysql就是认为连接是说本地地址,就会顺利通过。

在连接设置中,常规选项,IP填127.0.0.1,切换到SSH,填上服务器IP,SSH帐号密码。

ssh账号密码即linux的用户名和密码。

初次使用navicat连接linux上的mysql时,确定mysql的密码正确的情况下,出现 1045 access denied for user 'root'@'****‘(using password:YES)。此方法适用。

### 如何使用 Navicat 连接阿里云 Linux 服务器 MySQL 数据库 #### 创建 SSH 隧道连接 为了安全地访问位于阿里云 Linux 服务器上的 MySQL 数据库,建议通过 SSH 隧道建立连接。这可以通过在本地计算机上设置一个到远程服务器的安全通道来实现。 #### 设置 MySQL 用户权限 确保 MySQL 中存在具有适当权限的用户账户以便能够接受来自外部 IP 地址的请求: ```sql CREATE USER 'root'@'%' IDENTIFIED BY '设定强密码'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'; FLUSH PRIVILEGES; ``` 上述命令创建了一个新用户 `root` 并赋予其全局管理权限[^2]。 #### 使用 Navicat 建立连接 打开 Navicat Premium 工具后,按照如下方式配置新的连接参数: - **连接名称**: 自定义描述性的名字用于识别此特定链接。 - **主机名/IP地址**: 输入 `127.0.0.1` 或者 `localhost` 而不是实际公网IP,因为我们将利用SSH隧道转发端口。 - **端口号**: 默认情况下为3306,除非更改过MySQL监听端口。 - **用户名/密码**: 刚才创建用户的凭证信息。 - **高级选项中的SSH部分**: - 启用“通过 SSH 隧道连接” - 提供有效的SSH Host(即ECS实例的公共IPv4) - 指定SSH端口,默认通常是22 - 输入拥有SSH访问权的账号及其私钥文件路径或直接输入密码验证 完成以上步骤之后点击保存并尝试测试连接以确认一切正常工作。 #### 处理可能遇到的问题 如果遇到无法解析主机错误如 “Unknown MySQL server host”,可能是由于DNS解析失败或者是防火墙阻止了通信。检查网络连通性和安全组规则允许必要的入站流量到达目标机器[^5]。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值