摘要:在数字化浪潮席卷而来的今天,数据库作为数据存储与管理的核心,其管理和运维显得尤为重要。随着业务规模的持续扩展,为了规避性能瓶颈、安全隐患和扩展性不足等问题,不少用户选择将数据库和应用分开部署。然而,这种做法不仅耗费大量时间与人力成本,还使运维变得更加复杂。那么
在数字化浪潮席卷而来的今天,数据库作为数据存储与管理的核心,其管理和运维显得尤为重要。随着业务规模的持续扩展,为了规避性能瓶颈、安全隐患和扩展性不足等问题,不少用户选择将数据库和应用分开部署。然而,这种做法不仅耗费大量时间与人力成本,还使运维变得更加复杂。那么,如何在不同发展阶段满足多数据库的多样化需求?又如何在保证数据安全、提升可用性和性能的同时,优化成本?这正是数据库迁移技术价值所在。
本方案将为您详细解析如何将网站的自建数据库迁移至云数据库 RDS,有效解决数据库管理中的痛点与难题。通过云数据库 RDS,您可以实现零成本维护、高可用性以及集群秒级故障切换,确保业务的稳定运行,同时优化数据库参数与性能,并全面保障数据安全。
核心优势
零成本:公网流量不收费;提供最多 2 倍于存储空间的免费备份空间;通用型数据库代理不收费;支持 Serverless。高可用,保证业务稳定性:高可用和集群系列秒级故障切换,最高保障 99.99% 可用性;基础系列自动故障恢复,承诺 99.5% 可用性;自动读写分离,实现负载均衡。参数持续优化,性能优越:持续优化参数;支持只读实例和读写分离,扩展读性能;支持慢日志分析、自动 SQL 优化;自研 AliSQL 和 AliPG 优化性能数据传输加密,阿里云自动修复:SSL 加密;TDE 加密;SQL 洞察与审计;内核 Bug 由阿里云修复方案架构
由 RDS 实现数据库可靠性、可用性、安全性的保障。应用部署在 ECS 上,通过内网(VPC)访问 RDS 。使用数据传输服务 DTS 将 ECS 上的自建数据库迁移至云数据库 RDS ,迁移过程平滑、安全、高效,应用停机时间降低到分钟级别。本文提供快速体验教程,全面模拟数据库迁移过程,帮助您快速上手迁移操作。
一键部署资源
您可以通过一键部署模板,快速创建一个云服务器 ECS 实例和一个云数据库 RDS 实例,ECS 实例上已经部署了网站以及自建数据库。本方案以 WordPress 网站为例。
单击一键部署进入 ROS 控制台,在顶部选择华东 1(杭州)。填写模板参数:为方便体验,您只需关注可用区、ECS 实例密码和 RDS 数据库密码三个参数的选择,其它参数可使用方案默认值或按需选择。查看页面右下角的资源价格,确认无误后单击创建。等待资源栈创建,资源部署时间约为 10 分钟,请耐心等候,直至资源栈状态显示为创建成功。
查看已部署的资源
在资源页面,您可以查看上述步骤所生成的 ECS 实例、RDS 实例、wordpress 网站访问地址等。
在资源栈 > 资源栈列表中单击上一步创建的资源栈。在顶部单击资源页签,可以查看已创建的资源及相关信息。在顶部单击输出页签,可以查看输出关键字列表,各关键字描述具体见方案详情。安装WordPress网站
一键部署资源后,进入WordPress安装页面,完成WordPress安装。
访问资源编排管理控制台,在资源栈列表中单击刚创建的资源栈。在资源栈顶部单击输出页签,并在输出关键字列表中找到ECSWordPressUrl参数对应的值,单击进入网站。在WordPress安装页面,填写网站相关信息,然后单击Install WordPress。如下图所示:浏览WordPress网站
返回资源编排管理控制台,在资源栈列表中单击刚创建的资源栈。单击输出页签中ECSWordPressUrl参数对应的值,即可进入网站浏览。现在,您可以使用DTS数据传输服务,配置源库和目标库信息,开始迁移数据库的库表结构、全量数据和增量数据。
登录DMS数据管理服务。在顶部菜单栏选择集成与开发(DTS) > 数据传输(DTS) > 数据迁移。单击创建任务。配置源库及目标库信息。(具体配置请点击方案详情)单击测试连接以进行下一步,系统会自动为ECS添加DTS安全组,为RDS添加DTS服务器IP至白名单,以允许DTS访问ECS和RDS。如果有失败信息,参考对应的错误提示进行修改即可。配置迁移任务。(具体配置方法请点击方案详情)预检查通过率达到100%后,单击下一步购买。选择数据迁移实例的链路规格(本案例以small规格为例),阅读并选中《数据传输(按量付费)服务条款》,单击购买并启动。迁移任务正式开始。单击迁移任务ID可以查看具体进度。当您看到如下界面,表示存量数据已迁移完成,增量数据会实时同步。此时您可以进入下一步,验证RDS里的数据。
六、方案验证通过查看RDS实例中的数据,验证数据迁移结果
登录RDS实例a. 单击资源栈顶部资源按钮,然后单击Database资源ID进入RDS控制台,单击登录数据库。
b. 在弹出的DMS页面中,填写RDS高权限数据库账号和密码,然后单击登录。
全量数据验证a. 在SQLConsole窗口,在左侧双击目标数据库名称wordpressdb,可以看到自建数据库所有库、表数据已经完成迁移。
3. 增量数据验证
a. 在SQLConsole窗口,双击wp_comments表名,再单击执行,查看wp_comments表的数据。
b. 前往资源编排管理控制台,在资源栈列表中单击之前创建的资源栈。
c. 在资源栈顶部单击输出页签,并在输出关键字列表中找到ECSWordPressUrl参数对应的值,单击进入网站,往下浏览找到如下图,点击进入评论区。
d. 在网站中新增一条评论或多条评论,如下图
e. 再次查看RDS实例中wp_comments表的数据,执行查询语句可以看到增加的评论,说明增量数据已迁移成功。
通过切换数据库连接并访问网站,验证RDS服务可用性
从自建数据库切换到RDS为避免数据丢失,建议先停止写入数据,然后再将应用程序的数据库连接配置修改为云数据库RDS的连接地址。
a. 停止写入数据到源数据库。
b.修改WordPress配置文件中的数据库连接配置。
(1) 在资源列表中单击WebServer资源ID进入ECS控制台,点击远程连接使用ECS账户登录。本示例中,ECS账号为root,密码为用户自定义密码。
【说明:如果提示用户名或密码不正确,可能是因为密码错误或者操作系统未完全启动,请确认输入的用户名和密码,或者稍后再尝试登录。】
(2) 打开配置文件。
sudo vim /usr/share/nginx/html/wp-config.php
(3) 按i进入插入模式。
(4) 修改数据库连接配置:
修改数据库账号:将wordpressuser改为RDS高权限账号dbuser。修改数据库密码:将password修改为您自定义的密码。修改数据库连接地址:将localhost修改为RDS内网连接地址(可以直接复制资源栈输出页签中RDSInternalAddress关键字对应的值)。 按Esc键退出插入模式。输入:wq,并按Enter键退出vim编辑器。【说明:以上仅为本示例教程的切换步骤,关于生产环境的切换和回滚方案,请参见业务切换流程。】
验证切换后的服务可用性a. 返回资源编排管理控制台,在资源栈列表中单击刚创建的资源栈。
c. 在网站新增一条评论,再次查看RDS实例中wp_comments表的数据,执行查询语句可以看到增加的评论。
来源:阿里技术