Navicat Premium 远程连接云服务器MySQL

本文详细介绍如何在阿里云Ubuntu服务器上启动MySQL服务,配置安全组规则,以及使用Navicat Premium实现远程连接MySQL数据库的过程。

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

环境:

Navicat Premium 11.0.17版本

阿里云服务器Ubuntu系统18.04,

MySQL 5.7

1,服务器要启动MySQL服务,

MySQL安装后都是默认处于启动状态的(没有主动停止的情况下),可以先用mysql -uroot -p 命令登录测试一下,

如果没有启动,需要启动

启动:sudo service mysql start

停止:sudo service mysql stop

2,配置云服务器安全组规则,

登录阿里云官网,进入控制台,云服务器ESC ---->  网络和安全----> 安全组 ,在安全组列表里可看到自己的实例,

选择配置规则,

 选择快速创建规则或直接克隆,(这是我已经配置好的)

保存 ,

3,连接MySQL

打开Navicat Premium ,点击 连接 选择MySQL,连接名随便起,主机或ip地址填云服务器公网ip地址,端口3306,输入用户名(要有远程登录权限),密码,

连接测试,成功后点确定退出!

### 使用 Navicat 连接云服务器上的 MySQL 数据库 #### 准备工作 在开始之前,确保已完成以下准备工作: 1. 已经成功购买并配置好阿里云 ECS 服务器。 2. 安装了 Docker 并通过 Docker 成功运行了 MySQL 实例[^4]。 3. 确认 MySQL 的 root 用户已设置允许远程访问,并分配了相应的权限。 --- #### 配置 MySQL 授权远程访问 由于默认情况下 MySQL 不会开放外部网络连接,因此需要手动调整其配置文件以及用户权限: 1. **登录到 MySQL** 登录到 Docker 中的 MySQL 容器,并执行如下命令: ```bash docker exec -it mysql bash mysql -u root -p ``` 2. **修改用户的主机地址限制** 默认情况下,`root` 用户仅限于本地 (`localhost`) 访问。可以通过 `ALTER USER` 命令更改此限制: ```sql ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '新密码'; FLUSH PRIVILEGES; ``` 上述语句的作用是将 `'root'@'%'` 设置为可以从任意 IP 地址访问 MySQL 数据库,并指定新的密码[^3]。 3. **授予远程访问权限** 执行以下 SQL 命令来赋予 `root` 用户完全控制权: ```sql GRANT ALL ON *.* TO 'root'@'%'; FLUSH PRIVILEGES; ``` 4. **确认防火墙规则** 如果服务器启用了防火墙,则需打开 MySQL 默认使用的 3306 端口: ```bash sudo ufw allow 3306/tcp sudo systemctl reload ufw ``` 5. **重启 MySQL 服务** 修改完成后,建议重新启动 MySQL 以应用所有变更: ```bash service mysql restart ``` --- #### 在 Navicat 中创建连接 完成上述操作后,在 Navicat 软件中按照以下方式建立与云服务器MySQL 数据库的连接: 1. 启动 Navicat PremiumNavicat for MySQL 应用程序[^1]。 2. 创建一个新的连接: - 右键点击左侧导航栏中的 “Connections”,选择 “New Connection”。 - 输入名称以便识别该连接(例如:“Aliyun_MySQL”)。 3. 配置基本参数: - **Connection Name**: 自定义名称。 - **Host/Address**: 输入您的阿里云服务器公网 IP 地址。 - **Port**: 默认填写 `3306`。 - **Username**: 输入刚才设定好的用户名(通常是 `root`)。 - **Password**: 对应的密码。 4. 测试连接: 单击底部的 “Test Connection” 按钮验证是否能够正常通信。如果一切无误,应该可以看到成功的提示消息。 --- #### 解决可能遇到的问题 以下是几个常见的错误及其解决方案: 1. **Error Code: 1045 Access denied for user...** 此类问题是因账户未被授权或者密码不匹配引起。请返回至第 II 条目下的步骤逐一排查[^2]。 2. **Can't connect to server on ...** 表明目标机器拒绝接受来自客户端的数据包传输请求。检查服务器的安全组策略是否有放行 TCP/UDP 类型流量经过端口号 3306[^5]。 3. **Lost connection during query execution** 当长时间闲置时可能会触发超时断开机制。尝试调高 timeout 参数值或保持活动状态即可缓解此类现象发生。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值