如何使用宝塔面板打开云数据库及添加远程访问权限

当本地开发项目准备上线时,通常需要将数据库迁移至云服务器,并配置为允许远程访问。这样做不仅能让前端应用或移动设备通过公网连接到数据库,还能方便开发团队在不同地点协作。 为保证安全,开启远程访问需注意权限分配和防火墙设置,遵循最小权限原则。
基础环境准备

在开始配置之前,请确保您已完成以下准备工作:

如何使用宝塔面板打开云数据库及添加远程访问权限

  • 安装宝塔面板:在云服务器(如阿里云ECS)上完成宝塔面板的安装,建议系统选择CentOS 7.x以获取最佳兼容性。
  • 安装MySQL数据库:登录宝塔面板,进入“数据库”页面,点击安装MySQL服务,通常选择极速安装默认版本即可。
  • 记录关键信息:包括数据库的IP地址端口号(默认为3306)以及数据库名称。

配置服务器防火墙
防火墙配置是实现远程访问的第一道关卡,需要从云服务商控制台和宝塔面板两处进行操作。

1. 云服务器安全组配置(以阿里云为例)

  • 登录云服务商控制台,进入您的服务器实例详情页。
  • 找到“安全组”或“网络与安全组”配置,添加一条入方向规则:
    • 协议类型:TCP
    • 端口范围:3306/3306
    • 授权对象:如果暂时测试,可设置为0.0.0.0/0(允许所有IP);但在生产环境中,强烈建议仅授权给特定的IP地址或IP段,以提高安全性。

2. 宝塔面板防火墙配置

  • 登录宝塔面板,进入左侧菜单的“安全” → “系统防火墙”。
  • 点击“添加端口规则”,输入端口号3306,备注可填写“MySQL远程连接”,然后确定保存。

开放MySQL数据库的远程访问权限

即使防火墙端口已开放,MySQL数据库自身的用户权限体系也可能阻止外部连接,这需要通过宝塔面板或命令行进行调整。

方法一:通过宝塔面板图形界面修改

  • 在宝塔面板的“数据库”页面,找到您需要远程访问的数据库。
  • 点击该数据库右侧的“权限”菜单,将访问权限从默认的“localhost”修改为“所有人”,然后点击确定。此操作等效于在数据库中授权用户从任意IP(‘%’)进行连接。

方法二:通过MySQL命令行授权(适用于高级用户)

登录MySQL命令行:mysql -u root -p,输入密码后,执行授权命令。例如,对于MySQL 5.x版本,可以使用类似以下命令授权root用户从任意IP访问(请将‘你的root密码’替换为实际密码):

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的root密码' WITH GRANT OPTION;

执行后需运行FLUSH PRIVILEGES;使权限生效。

使用cpolar创建隧道实现公网TCP访问

如果您的服务器没有固定公网IP,或者希望通过域名进行更便捷的访问,可以使用内网穿透工具cpolar来创建一条指向MySQL服务的TCP隧道。

  • 安装cpolar:在宝塔面板的终端中执行一键安装脚本:curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
  • Token认证:登录cpolar官网(www.cpolar.com),在左侧“验证”页面查看并复制您的认证Token。回到终端,执行cpolar authtoken [您的Token]进行认证。
  • 创建TCP隧道:通过本地IP加9200端口访问cpolar的Web管理界面。点击“隧道管理” → “创建隧道”,按如下配置:
    • 隧道名称:可自定义(如mysql-tunnel)。
    • 协议:选择TCP
    • 本地地址:填写3306。
    • 域名类型:选择“随机域名”(会生成一个临时公网地址)。
    • 地区:选择China VIP。
  • 隧道创建成功后,在“在线隧道列表”中会看到一个公网TCP地址,格式通常为tcp://xxxx.cpolar.top:xxxxx,这个地址就是用于远程连接的地址。

使用数据库客户端测试远程连接

配置完成后,强烈建议使用专业的数据库管理工具(如Navicat)进行连接测试。

  • 打开您的数据库客户端(例如Navicat)。
  • 选择“连接” → “MySQL”,在弹出的对话框中填写连接信息:
    • 连接名:自定义一个名称。
    • 主机名或IP地址
      • 如果您的云服务器有固定公网IP,则填写该IP地址。
      • 如果使用了cpolar等内网穿透工具,则填写其生成的公网TCP地址(不含tcp://前缀)和端口号。
    • 端口:对应您填写的主机信息中的端口。
    • 用户名和密码:填写您MySQL数据库的登录凭据(如root用户及其密码)。

点击“测试连接”,如果显示“连接成功”,则表明整个远程访问配置已正确完成。

常见问题与安全优化建议

在成功实现远程访问后,运维工作并未结束,持续的优化和安全加固至关重要。

  • 连接失败排查:如果测试连接失败,请依次检查:云服务器安全组规则、宝塔面板防火墙、MySQL用户权限是否均已正确配置。
  • 安全加固建议
    • 限制访问IP:在生产环境中,避免长期使用“所有人”或0.0.0.0/0这样的开放策略。应在云服务商安全组和MySQL用户授权中,尽可能指定允许连接的特定IP或IP段。
    • 使用非root账户:为远程连接创建专用的数据库用户,并授予其完成特定任务所必需的最小权限。
    • 定期修改密码:为数据库账户设置强密码并定期更换。
    • 启用SSL加密:如果数据库客户端和服务端支持,启用SSL加密可以极大地提升数据传输过程中的安全性。

内容均以整理官方公开资料,价格可能随活动调整,请以购买页面显示为准,如涉侵权,请联系客服处理。

本文由星速云发布。发布者:星速云。禁止采集与转载行为,违者必究。出处:https://www.67wa.com/105204.html

(0)
上一篇 2025年11月21日 下午8:07
下一篇 2025年11月21日 下午8:08
联系我们
关注微信
关注微信
分享本页
返回顶部