通过云服务器跳板连接云数据库RDS?

简介: 购买同一VPC下的云服务器ECS和云数据库RDS后,在RDS不绑定EIP,如何通过本地Navicat、DBever等工具连接?这里,我们采用Nginx做代理,轻松实现本地访问云数据库,节省RDS绑定EIP的费用。

一、实现原理

1.png
2.png

二、安装nginx

参考地址【1】https://www.runoob.com/linux/nginx-install-setup.html
参考地址【2】https://www.cnblogs.com/boonya/p/7907999.html

  • 安转nginx依赖包
yum -y install make gcc-c++ pcre pcre-devel zlib zlib-devel libtool openssl openssl-devel
  • 下载nginx包

下载地址http://nginx.org/download/,注意:选择1.9以上版本,只有1.9以上版本才支持--with-stream

cd /usr/local/src

wget http://nginx.org/download/nginx-1.9.10.tar.gz
  • 解压
tar zxvf nginx-1.9.10.tar.gz
  • 安装nginx,注意:编译时添加参数--with-stream
cd nginx-1.9.10

./configure --with-stream

make & make install
  • 查看安转目录
whereis nginx

image.png

  • 验证是否安装成功
/usr/local/nginx/sbin/nginx -v

image.png

三、配置并启动nginx

设置代理,将连接服务器【117.73.3.71:3306】请求转发到内网数据库【172.31.0.17:3306】。

  • 修改配置文件
stream {
    upstream rdsmysql {
       hash $remote_addr consistent;
       server 172.31.0.17:3306 weight=5 max_fails=3 fail_timeout=30s;
    }

    server {
       listen 3306;#数据库服务器监听端口
       proxy_connect_timeout 10s;
       proxy_timeout 300s;#设置客户端和代理服务之间的超时时间,如果5分钟内没操作将自动断开
       proxy_pass rdsmysql;
    }
}
  • 启动nginx
cd /usr/local/nginx/sbin

./nginx
  • 验证启动是否成功
ps aux|grep nginx

image.png

  • 重新载入配置文件
/usr/local/nginx/sbin/nginx -s reload
  • 查看服务器是否对3306端口监听
netstat -nap|grep 3306

image.png

  • 停止nginx
/usr/local/nginx/sbin/nginx -s stop

四、通过nginx代理连接MySQL

使用本地工具Navicat连接MySQL

848e8113e7487d9817eeefe369b183b.jpg

连接失败原因:ECS服务器本身的防火墙未开放3306端口。注意:ECS的安全组只是针对外网访问做了限制,服务器本身仍然有限制,共两层限制。

  • 添加需要监听的端口
/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

b368231f42ce826d21cfe0adfcf7858.png

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
SQL 关系型数据库 MySQL
2024年阿里云数据库创建_数据库账号密码和连接教程
阿里云数据库怎么使用?阿里云百科整理阿里云数据库从购买到使用全流程,阿里云支持MySQL、SQL Server、PostgreSQL和MariaDB等数据库引擎,阿里云数据库具有高可用、高容灾特性,阿里云提供数据库备份、恢复、迁移全套解决方案。详细阿里云数据库购买和使用流程方法如下
|
SQL 关系型数据库 MySQL
云数据库 RDS
以下是对四种数据库引擎的介绍
337 6
|
弹性计算 网络协议 关系型数据库
ECS域名问题之国内实例能不能导入阿里云新加坡的ECS和RDS如何解决
ECS(Elastic Compute Service,弹性计算服务)是云计算服务提供商提供的一种基础云服务,允许用户在云端获取和配置虚拟服务器。以下是ECS服务使用中的一些常见问题及其解答的合集:
|
SQL 人工智能 关系型数据库
【PG锦囊】阿里云 RDS PostgreSQL 版插件—AI 插件(rds_ai)
本文介绍了AI 插件(rds_ai)的核心优势、适用场景等,帮助您更好地了解 rds_ai 插件。想了解更多 RDS 插件信息和讨论交流,欢迎加入 RDS PG 插件用户专项服务群(103525002795)
|
存储 运维 5G
基于阿里云数据库 SelectDB 内核 Apache Doris 的实时/离线一体化架构,赋能中国联通 5G 全连接工厂解决方案
数据是 5G 全连接工厂的核心要素,为支持全方位的数据收集、存储、分析等工作的高效进行,联通 5G 全连接工厂从典型的 Lambda 架构演进为 All in [Apache Doris](https://c.d4t.cn/vwDf8R) 的实时/离线一体化架构,并凭借 Doris 联邦查询能力打造统一查询网关,数据处理及查询链路大幅简化,为联通 5G 全连接工厂带来数据时效性、查询响应、存储成本、开发效率全方位的提升。
1588 4
基于阿里云数据库 SelectDB 内核 Apache Doris 的实时/离线一体化架构,赋能中国联通 5G 全连接工厂解决方案
|
弹性计算 JSON 关系型数据库
使用ROS模板基于ECS和RDS创建WordPress环境
使用ROS模板基于ECS和RDS创建WordPress环境
|
弹性计算 NoSQL 网络安全
软件开发常见之云数据库Redis连接不上如何解决,修改配置后,需要重启下redis服务,配置才能生效呢,是重启,而不是重载配置,最后导致的问题是点击了的重启,配置修改了之后必须点击重启,而不是修改
软件开发常见之云数据库Redis连接不上如何解决,修改配置后,需要重启下redis服务,配置才能生效呢,是重启,而不是重载配置,最后导致的问题是点击了的重启,配置修改了之后必须点击重启,而不是修改
|
SQL 关系型数据库 数据库
阿里云数据库 RDS SQL Server版实战【性能优化实践、优点探析】
本文探讨了Amazon RDS SQL Server版在云数据库中的优势,包括高可用性、可扩展性、管理便捷、安全性和成本效益。通过多可用区部署和自动备份,RDS确保数据安全和持久性,并支持自动扩展以适应流量波动。可视化管理界面简化了监控和操作,而数据加密和访问控制等功能保障了安全性。此外,弹性计费模式降低了运维成本。实战应用显示,RDS SQL Server版能有效助力企业在促销高峰期稳定系统并保障数据安全。阿里云的RDS SQL Server版还提供了弹性伸缩、自动备份恢复、安全性和高可用性功能,进一步优化性能和成本控制,并与AWS生态系统无缝集成,支持多种开发语言和框架。
|
弹性计算 关系型数据库 MySQL
阿里云数据库服务器价格表,数据库创建、连接和使用教程
阿里云数据库使用流程包括购买和管理。选择所需数据库类型如MySQL,完成实名认证后购买,配置CPU、内存和存储。确保数据库地域与ECS相同以允许内网连接。创建数据库和账号,设置权限。通过DMS登录数据库,使用账号密码连接。同一VPC内的ECS需添加至白名单以进行内网通信。参考官方文档进行详细操作。
732 3
|
SQL 关系型数据库 MySQL
阿里云数据库使用教程、购买、价格、连接数据库全流程
阿里云数据库使用涉及购买、创建及登录步骤。支持MySQL、SQL Server等引擎。购买时选择所需配置、地域和可用区。创建数据库和账号后,通过DMS登录。在同一地域内,ECS需将IP加入RDS白名单以实现内网连接。详细流程见阿里云官方文档。
2227 2