一、开篇语

1.1 传统数据库的压力日益倍增


    随着全球网民的持续增长,数据库的压力已越来越成为一个企业的瓶颈。在业务和用户量的的持续增长下,如何保证数据库的安全性、稳定性、可用性?
    国内的市场竞争激烈,往往提出一个idea,就会有无数人跟进。如何在极短时间内提供一个具备完整功能的数据库,同时能够降低企业经营成本,提高生产效率?
    传统数据库面临着:新建成本高昂、操作配置复杂、没有可视界面、对技术人员要求极高,如何解决这些痛点?
    随着“云时代”的到来,这些问题有望解决。
    云数据库简称RDS,它的优化和部署都在云端完成,具有简单方便、稳定可靠、弹性伸缩、便捷管理等特点。同时,云数据库一般具有:读写分离、主从复制、故障切换、数据备份、按需扩容等功能。我们来看看它与传统数据库相比存在哪些优势吧!

1.2 云数据库 vs 传统数据库

云数据库 传统数据库
安全性

防DDos攻击、流量清洗、及时修复各种数据库安全漏洞。

自行购买一些安全的软硬件、依靠运维人员技术能力、开发人员行为规范规避。

可用性

云数据库一般提供主备双节点,同时双节点可以在同一个地域的不同时区。跨地域的主备能够提供更大的可用性!
生成的数据库为高可用架构,可用性高达99.9999%。
一般云服务提供商提供自动备份功能。

一般部署在本地机房,大多为同机房的多机器之间的主从备份。如果电缆被挖、突然停电、天灾人祸等,容易造成不可估量损失;依靠公司技术人员,自行搭建主备复制、监控、RAID等,高可用性参差不齐;

效率性

直接选择节点,数据库类型,在几分钟内即可拥有一个具备完整能力的高可用数据库,可以认为是0运维;

依靠高级运维人员、Devops、开发人员、DBA等协作,手动配置,中间众多环节需要依靠技术人员的能力和经验来规避风险。耗时较为漫长。
操作性

对于开发人员,跟本地数据库一样操作,无感知;对于运维人员来说,能够直接在云服务提供商的控制台上便捷操作,简单快捷。

对于运维人员来说,需要自行配置一些快捷脚本,或者自行搭建操作系统。

资源利用率

按照实际所需购买,能够达到近100% 的资源利用率。
如果后续需要扩容,能够很方便的在控制台中选择扩容的大小。

采购环节繁琐,流程缓慢,不能实时扩容。
资源一般比实际需要要来的多,因为如果设置少了,扩容很麻烦。
同时业务也有高峰低峰期,在低峰期资源闲置造成浪费。

花费成本

1. 从硬件上来说,根据所需选择合适的容量,能够方便快捷扩容;
2. 从软件上来说,云服务商提供了业界主流解决方案,能够方便快捷的各种操作;不需要重新开发。
3. 从维护上来说,基本不需要运维;

需要购买服务器、托管机房、聘用专业的技术人员。需要耗费大量的硬件成本、软件成本(比如使用SQL Server就需要支付许可证费用)、人力成本、时间成本。

二、选择云数据库

2.1 走进Amazon RDS

由于数据库的重要性不言而喻,笔者研究各大云服务提供商的RDS,进行了一番深度体验之后,最终选择了介绍它: Amazon RDS!
    Amazon是什么?它是美国最大的电子商务平台,是最早开始经营电子商务的公司之一。像国内有双十一购物节,Amazon在圣诞至元旦期间也会有促销活动。在活动期间需要大量的用户资源,而在平时又会闲置下来。为了提高硬件资源的利用率,于是想到了将它们“租”出去。正是这一举动,诞生了最早的云服务提供商之一。
    背靠强大的技术能力、丰富的实战经验。如今,目前Amazon已成为最大的云服务提供商,据研究报告显示,截止2021年底,亚马逊全球云计算IaaS市场份额高达47.4%,相当于整个市场的”半壁江山“。

2.2 Amazon RDS 有哪些特点和优势所在?

Amazon RDS是一项托管关系数据库服务,支持六种常见数据库引擎选项,包括Amazon Aurora、MySQL、MariaDB、Oracle、Microsoft SQL Server和PostgreSQL,接下来我们来看它的产品特点。

  • 降低维护成本:

    • 使用简单:利用AWS管理控制台、Amazon RDS命令行界面或者简单的API调用就可以自动生成所需类型的数据库,同时会自动配置合适的参数和设置集,能够在几分钟内即可连接并进行精细控制和微调;
    • 自动软件修补:安装的软件会同时安装最新的修补程序,保持最新状态。同时可以自行设置是否修补数据库实例以及修补时间。(比如说出现了什么漏洞,不需要咱们手动更新,就会自动安装补丁)
    • 最佳实践建议:Amazon RDS可以分析数据库实例中的配置和使用率指标,从而提供最佳的实践指导,用户可以浏览提供的建议并根据自己所需进行选择执行。
  • 提供多种存储类型:
    • 通用型(SSD)存储:Amazon RDS 通用型存储是SSD型存储选项。是最常用的数据库存储类型。
    • 预置了IOPS存储:能够提供快速、可预测和一致的I/O性能。这种类型专为I/O密集型事务(OLTP)数据库工作负载进行了优化。用户可以在创建数据库实例时指定IOPS速率。
  • 可扩展性强:
    • 支持一键式计算扩展:能够将部署的计算和内存资源最大扩展到32个vCPU 和 244 GiB RAM。计算扩展操作一般在几分钟内即可完成;
    • 轻松扩展存储:通过MySQL、MariaDB、Oracle 和 PostgreSQL 引擎,支持扩展多达64TB存储,SQL Server则最多支持16TB。存储扩展可随时完成,且不会产生任何停机时间。
  • Amazon RDS 提供了自动化无差别全脱管服务,比起个人处理需要各种繁复的工作、高额的成本、以及工作时间的限制,Amazon 提供了7*24 小时的自动处理,仅仅只需要小鼠标一点即可。如下为它与传统数据库的比较:
传统数据库 Amazon RDS
模式设计 个人处理 个人处理
查询构建 个人处理 个人处理
查询优化 个人处理 个人处理
自动故障恢复 个人处理 Amazon 自动化
备份还原 个人处理 Amazon 自动化
隔离与安全 个人处理 Amazon 自动化
行业合规 个人处理 Amazon 自动化
一键扩展 个人处理 Amazon 自动化
自动修补 个人处理 Amazon 自动化
高级监控 个人处理 Amazon 自动化
日常维护 个人处理 Amazon 自动化
内置最佳实践 个人处理 Amazon 自动化
  • 使用Amazon RDS能够帮助我们处理日常的大部分功能,而我们只需要关注去设计数据库的内容、怎么根据实际业务查询数据库。这样能够让企业能够节约更多的精力用在商业模式的创新上面。

2.3 可供参考的资料

了解到它的特点之后,我们可以来实际的上手测试它的效果;以下是博主搜集到的学习资料和活动:

  • 学习资料:

    • 官网: https://aws.amazon.com/cn/
    • 数据库免费试用及上手教程:https://aws.amazon.com/cn/getting-started/databases/get-started/?nc=sn&loc=4&trk=fab55528-7c2e-4517-b90e-65b760ecfc1c&sc_channel=el
    • 云原生数据库在线大全:https://www.awsevents.cn/CloudNative/listDetails.html?trk=1227489f-bfd0-430a-85df-750d92bb9d11&sc_channel=el
    • 入门资源中心:https://aws.amazon.com/cn/getting-started/?nc1=h_ls&trk=32540c74-46f0-46dc-940d-621a1efeedd0&sc_channel=el
    • 架构中心:https://aws.amazon.com/cn/architecture/?intClick=dev-center-2021_main&trk=3fa608de-d954-4355-a20a-324daa58bbeb&sc_channel=el
    • 构建者库:https://aws.amazon.com/cn/builders-library/?cards-body.sort-by=item.additionalFields.sortDate&cards-body.sort-order=desc&awsf.filter-content-category=*all&awsf.filter-content-type=*all&awsf.filter-content-level=*all&trk=835e6894-d909-4691-aee1-3831428c04bd&sc_channel=el
    • 用于在亚马逊云科技平台上开发和管理应用程序的工具包:https://aws.amazon.com/cn/tools/?intClick=dev-center-2021_main&trk=972c69e1-55ec-43af-a503-d458708bb645&sc_channel=el
  • 活动:
    • 前亚马逊云科技提供了100余种产品免费套餐。其中,计算资源Amazon EC2首年12个月免费,750小时/月;存储资源 Amazon S3 首年12个月免费,5GB标准存储容量;数据库资源 Amazon RDS 首年12个月免费,750小时;Amazon Dynamo DB 25GB存储容量永久免费。:https://aws.amazon.com/cn/free/?nc2=h_ql_pr_ft&all-free-tier.sort-by=item.additionalFields.SortRank&all-free-tier.sort-order=asc&awsf.Free%20Tier%20Types=*all&awsf.Free%20Tier%20Categories=*all&trk=e0213267-9c8c-4534-bf9b-ecb1c06e4ac6&sc_channel=el
    • 最新优惠大礼包,200数据与分析抵扣券,200数据与分析抵扣券,200数据与分析抵扣券,200机器学习抵扣券,200$微服务与应用开发抵扣券。:https://www.amazonaws.cn/campaign/?sc_channel=el&sc_campaign=credit-acts-ldr&sc_country=cn&sc_geo=chna&sc_category=mult&sc_outcome=field&trkCampaign=request-credit-glb-ldr&trk=f45email&trk=02faebcb-3f61-4bcb-b68e-c63f3ae33c99&sc_channel=el
    • 解决方案CloudFormation一键部署模版库:https://aws.amazon.com/cn/quickstart/?solutions-all.sort-by=item.additionalFields.sortDate&solutions-all.sort-order=desc&awsf.filter-content-type=*all&awsf.filter-tech-category=*all&awsf.filter-industry=*all

同学们在使用的时候,注意选择免费套餐。使用集群可能会产生费用先清楚再玩集群,出现计费情况可及时联系亚马逊客服帮忙抵消;接下来,我将实际使用Amazon RDS 来实战测试效果。

三、实战测试Amazon RDS

3.1 注册流程演示

  1. 首先登陆官网,选择创建AWS账户按钮:
  2. 填入你的邮箱、AWS账户名称(随便填,后面可以修改),然后点击验证电子邮件地址
  3. 找到你邮箱收到的验证码,然后填入后进行创建密码阶段。
  4. 接下来,填入补充信息。
  5. 到了最关键的一步,补全信用卡/借记号信息;
  6. 验证手机号,输入验证码;
  7. 验证完成后即注册成功,如图所示:

3.2 安装MySQL流程演示

  1. 还是登录官网,然后点击登录控制台按钮:
  2. 接着输入咱们注册流程中填入的邮件地址和根密码,登录成功后展示如下界面:


3. 点击AWS右上角菜单,依次选择服务 -> 数据库 -> RDS

4. 进入RDS页面后,选择创建数据库按钮:

5. 由于博主日常使用MySQL较多,我们以MySQL创建示例。先选择MySQL,然后选择实例类型,写入实例标识、主用户名信息,最后填入密码(生产环境可以选择自动生成密码,这样能够保证安全性),点击创建数据库

其中生产环境与开发环境不同在于:多可用区部署(生产环境需要容灾)、预置IOPS存储作为默认值(综合性能更优秀)。
免费套餐就是白嫖的,真香~

  1. 创建完成后,会进入 Amazon RDS 中的数据库控制台页面,我们可以看到咱们的MySQL 正在自动创建:

Amazon RDS 创建的时候,会连带着将监控、备份等各种功能一应配好。安装完成后,会显示为可用状态;

  1. 点击实例名称,能够查看实例的状态和各种监控信息,如图所示。> 走到这一步,说明安装数据库工作已经成功了。接下来,我们一起进入连接MySQL 的流程环节中;

3.3 配置安全组流程演示

默认的安全组不能在外网访问,所以为了能够在外网访问到咱们的MySQL,所以需要配置一个安全组;

  1. 我们可以通过菜单栏来查找,不过最简单的方式可以直接从输入框搜索EC2,如图所示选择第一个进入:


2. 选择网络与安全,点击安全组,然后选择创建安全组:

3. 配置安全组规则。由于我们是测试使用,为了测试方便,可以直接先设置为所有流量

也可以配置指定的ip地址,它的出入站规则支持的协议非常丰富,后续可以去慢慢了解。

  1. 点击创建后,显示如下表示创建成功:

创建成功后,我们接下来就进行连接数据库的实战操作吧!

3.4 连接数据库流程演示

连接数据库的流程跟我们平时大同小异,博主此次演示MySQL 的连接流程,同学们可以参照对比来看。

  1. 在搜索栏中搜索RDS,进入后找到数据库实例,然后点击我们前面创建的数据库。
  2. 点击数据库实例标识名称,查看数据库信息。其中终端节点是我们访问数据库的host。同时可以看到公开可用性为否,说明目前外网还无法访问,接下来进行修改配置。
  3. 点击窗口的修改,将公开可用性设置为公开访问,同时修改安全组为刚才创建的internet-sale-group-anyu,再点立即应用,最后点修改数据库实例


  4. 使用日常的mysql 连接工具,博主以Navicat为例。输入host、端口号及密码:
  5. 点击连接测试,显示如图界面说明连接成功:


6. 连接上去之后,可以看到界面跟我们平时建的mysql 一样,操作均一样:

3.5 可供参考的资料

  • 博主提供了MySQL的实战案例,官方也提供了非常丰富的教程。
  • Amazon RDS 官方用户指南: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Welcome.html
    • 创建MariaDB: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_GettingStarted.CreatingConnecting.MariaDB.html
    • 创建SQL Server: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_GettingStarted.CreatingConnecting.SQLServer.html
    • 创建MySQL:https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_GettingStarted.CreatingConnecting.MySQL.html
    • 创建Oracle:https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_GettingStarted.CreatingConnecting.Oracle.html
    • 创建PostgreSQL:https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_GettingStarted.CreatingConnecting.PostgreSQL.html
    • 创建Web服务器和Amazon RDS:https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/TUT_WebAppWithRDS.html
    • MySQL数据导入指南:https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/MySQL.Procedural.Importing.html
  • 概述与功能:https://aws.amazon.com/cn/rds/
  • 文档:https://docs.aws.amazon.com/rds/index.html

四、最后总结

  • 之前所在公司,博主既是又当运维又当开发。实战测试了Amazon RDS,真的是感触良多,测试过程中总结了有这几点:

    • 丰富的数据库类型。业界使用广泛的数据库种类都支持搭建。同时自研了Amazon Aurora,它是一款兼容MySQL和PostgreSQL的一种增强型关系型数据库。(不得不说亚马逊是真的强啊~)
    • 自动化的创建方式。通过标准创建/轻松创建两种类型,满足不同群体创建数据库需求;同时创建时能够配置好我们所需要的配套设施(如监控系统、备份功能等)。
    • 便捷的操作界面。可以通过菜单栏,也可以搜索框进入。在RDS控制台中,可以通过按钮进行修改/删除/重启/停止/创建副本/创建快照等等功能。以前需要自己手动创建的功能,现在只需要点点点啦~
    • 完善的配套功能。安装完成后就可以看到监控、日志和事件、配置、维护和备份等众多功能。比如监控就非常详细,它支持时间范围筛选、不同实例之间的比较,还有各种不同的监控种类等。
    • 超低的学习门槛。从注册到使用,每一步写的很详细,同时教程和文档非常全面,还可以专家帮你解答。
  • 回到主题,随着云服务日益深入,我们需要顺势而上。很多同学说,我没有使用过云服务呀,为什么一定得要它?实际上,它已经深入到咱们生活中的方方面面。当我们换手机的时候,以前的电话、短信、相片等信息可以通过云服务从一台手机同步到另外一台手机。不需要购买电脑,只需要用自己手机的流量,就可以拥有一台云电脑。不需要安装,只需要流量就可以在线玩的云游戏。
  • 以上是生活中的例子,当然从SaaS、PaaS、IaaS上来说,也有非常多的云服务产品可供我们使用,云服务已经进入到我们的方方面面了。
  • PaaS下的Amazon RDS, 正引领着新一代的数据库解决方案。顺应时代,逐浪前行,2022年,让你的数据库与Amazon RDS一起上云吧!

2022年,你的数据库还没有上云吗?相关推荐

  1. 阿里云PolarDB发布重大更新 支持Oracle等数据库一键迁移上云

    5月21日,阿里云PolarDB发布重大更新,提供传统数据库一键迁移上云能力,可以帮助企业将线下的MySQL.PostgreSQL和Oracle等数据库轻松上云,最快数小时内迁移完成.据估算,云上成本 ...

  2. 2022 中小企业快成长之年,上云 选对平台是关键,这次我站华为云

    [摘要] 前言最近几年,可算是云服务大绽光彩的一段时间了.尤其是在过去两年内经受几轮疫情的考验,很多企业也是深刻体会到了数字化的重要性.目前企业上云进行数字化转型 已经成为中小企业发展更进一步的 指向 ...

  3. 《2022 中小企业快成长之年,上云 选对平台是关键,这次我站华为云》

    目录 <2022 中小企业快成长之年,上云 选对平台是关键,这次我站华为云> 前言 企业上云的优势 云服务器选择 华为云 安全方面 网络安全 数据安全 应用安全 华为云开年采购季 总结 & ...

  4. 阿里云PolarDB重大更新:两大技术突破,传统数据库一键迁移上云

    5月21日,阿里云PolarDB发布重大更新,提供传统数据库一键迁移上云能力,可以帮助企业将线下的MySQL.PostgreSQL和Oracle等数据库轻松上云,最快数小时内迁移完成.据估算,云上成本 ...

  5. 华为云数据库SQL Server 上云最佳实践

    作者:华为云数据库高级项目经理/沈志鹏 沈志鹏: 在我开讲之前要先强调一下,刚才两个引擎所说的所有优点,SQL Server都有. 开讲前问一句,有没有人用过SQL Server数据库的?很好用的人还 ...

  6. 原来AE还能上云渲染制作,再也不怕效率慢了

    Adobe After Effects(简称为AE)是Adobe公司推出的一款图形视频处理软件,适用于从事设计和视频特技的机构,包括电视台.动画制作公司.个人后期制作工作室以及多媒体工作室.属于层类型 ...

  7. 亚马逊云科技数据库的五大核心理念,为企业上云发展助阵

    数据智能产业创新服务媒体 --聚焦数智 · 改变商业 近日,走过十个年头的亚马逊re:Invent大会今年落下帷幕,亚马逊云科技发布了包括云数据库在内的一系列重塑未来的创新技术与服务,并邀请全球各行各 ...

  8. 客户将数据库迁移上云的常用办法

    下载网站:www.SyncNavigator.CN   客服QQ1793040 ---------------------------------------------------------- 关 ...

  9. 华为云云原生数据库GaussDB加速创新,企业核心数据上云信赖之选

    集大会演讲.圆桌讨论.精彩活动及现场直击....一大波华为开发者大会2021干货资料来喽~~!还等什么快快来领取技术福利! 本文分享自华为云社区<华为云云原生数据库GaussDB加速创新,企业核 ...

最新文章

  1. edge浏览器 开启java,启动Edge浏览器,然后等待其关闭[重复]
  2. C#正则提取HTML中img的url值
  3. java中子类对父类中的私有变量和私有方法有拥有权无使用权
  4. JSP2.0语法初步掌握(学习笔记)
  5. 迁移学习简介(tranfer learning)
  6. VTK:InfoVis之WordCloudDemo
  7. java split()方法_Java编程性能优化一些事儿
  8. sql更新表的字段和主键
  9. 记录最近的一些遇到的前端面试题
  10. java静态页面我都做不出_Java高并发:静态页面生成方案
  11. linux生成固定大小的文件夹的实现
  12. bulma.css_如何建立一个? Bulma CSS的自适应博客设计
  13. Guava事件处理组件Eventbus使用入门
  14. “浴霸”改“花洒”?华为Mate 30最新保护壳谍照曝光...
  15. 循环队列的实现笔记-c++
  16. Struts_登录练习(配置拦截器)
  17. DTW算法——Matlab实现
  18. 手机cpu芯片测试软件,手机CPU怎么检测
  19. 比特大陆发布终端 AI 芯片 端云联手聚焦安防
  20. Epub 转 txt

热门文章

  1. 计算机网口百兆改千兆,如何将电脑百兆网卡更改为千兆网卡?
  2. 做一个简单的“远程”开关 ESP8266 + APP
  3. unity 模拟弹簧
  4. 温习Android基础知识——《第一行代码(第三版)》读书笔记 Chapter 2 Kotlin语法
  5. python机器学习算法-Chapter1
  6. 传奇服务器需要满足什么条件
  7. 一起去追寻那大漠孤烟
  8. 大厂程序员裸辞,全职接单一个月的感触!
  9. 使用handeye_calib_camodocal进行手眼标定
  10. 缓冲液的配制(PBS与PBST)