RDS 云关系型数据库解析与实践| 学习笔记(三)

本文涉及的产品
RDS AI 助手,专业版
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS DuckDB + QuickBI 企业套餐,8核32GB + QuickBI 专业版
简介: 快速学习 RDS 云关系型数据库解析与实践

开发者学堂课程【关系型数据库 ACP 认证课程:快速学习 RDS 云关系型数据库解析与实践】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/927/detail/14618


RDS 云关系型数据库解析与实践


三、RDS 的数据迁移

1、数据迁移的概述

迁入就是将原实例、本地的迁移到 RDS 上,实例之间进行数据的复制,RDS 提供实例间数据库迁移的,DTS 提供数据传输服务。在云上,在做数据库迁移时,无论是迁入迁出,都是 DTS 来做。数据迁入有几种方法。

(1)通过 mysqldump 导出逻辑备份,导出以后 RDS 里面用纯传统的方式,DMS,执行 mysqldump 文件,执行. sql 文件,数据就过去了。也可以用 DTS 来做。本地机房做一个利旧,将本地机房做备份用,将 RDS 的物理备份或逻辑备份下载下来,下载下来以后先传到 OSS 里面,通过 OSS 进行下载,下载完成以后,在本地机房执行就可以。数据库迁移以前做比较麻烦,后来有了 DTS 数据传输服务以后,现在数据迁移变得特别简单。

image.png


2、数据迁移的两种方式

阿里云迁移工具的 DTS,支持很多的数据库。阿里云的迁移工具无论是 MySQL、SqlServer、Oracle 常见的数据库,里面有很多数据库 DTS 都是支持的,具体那些版本,比如 SqlServer 08、SqlServer 22、SqlServer 12、SqlServer 14、SqlServer 19等等。还有官营数据库和非官营数据库都是支持的,不仅仅是表格列的这些,这些只是一官营数据库来说一些比较常用的,DTS 是都支持的,版本可以查帮助文档里面。非阿里云的迁移,像 MySQ L就用 mysqldump,SqlServer 就用SSMS,Oracle 就用 RMAN。其实用的特别多的就是DTS,哪怕迁移失败,也会告诉你那一块迁移失败。

image.png


3、数据迁移:mysqldump 逻辑导入

Mysqldump 直接把一行命令把库当下来以后,导出一个 sql,导出 sql 以后在进行恢复,但是 mysqldump 会有一个问题,问题就是如果想使用 mysqldump,一般数据量不大的情况或者允许停机时间比较长的情况下,因为做 mysqldump 的时候数据库不能在启用的过程中,如果业务一直不停,还是在写库的时候、在做mysqldump 的时候,里面的文件就不全了,所以必须要停机、听业务,把业务停掉之后才能做 mysqldump。数据量比较大的情况,用传统的工具做打包、上传、在恢复,停业务的时间就非常非常的长,所以不太适合。最优的方式还是不停业务在线迁移的情况下,可以发通知,比如说,我们最近在做迁移,可能会产生一些不稳定的现象,因为他们是一个内部的系统,发通知是为了稳妥。

image.png

4、数据迁入:DTS 不停机迁入

在迁移的过程中用 DTS 在线迁移,是有进程在读取源库里面的内容的,对业务是有一点点影响的,但是业务不会停,所以在不停业务的情况下,先迁移结构,把结构迁移完之后在迁移全量,全量迁移其实是在某一个时间节点,比如开始创建一个时间节点,打一个标记,从这个节点往前推,这些都是全量。迁移玩全量之后,对 DTS 做一个监控就好了,哪怕报错了也可以继续修改,然后点就绪任务就好了,这样就可以把迁移整体的周期拉长,业务不会停,迁移完成之后就自动迁移增量,增量迁移会很快,因为源数据很大,但是新增确并不多所以就很快,迁移完成之后源库和新的目的库就在保持一个数据的同步,保持数据同步以后,到了时间点的时候,只要把云上的这套业务的数据库地址,都已经提起那配好的,只要把域名切过去就行,原环境停掉之后,直接把域名剪切到新的环境里,迁移的过程中可以对新的业务做一些测试等等。

image.png


5、数据迁出:下载备份+本地数据导入

本地数据导入的两种方式:

(1)利用物理备份文件恢复到自建数据库,RDS 使用开源软件 Xtrabackup 对MySQL 数据库进行实例级别的全量物理备份,用户需要下载改软件,并使用改软件进行恢复。

(2)利用逻辑备份文件迁移恢复到自建数据库。

image.png

6、数据迁移:DTS 不停机迁出

DTS 可以进行不停机的迁出,也是结构迁移、全量迁移、增量迁移对于 RDS 源端需要的是只读权限。迁入和迁出有区别,做迁入是本地库到云上面,然后云到本地是迁出。迁入:本地迁移到云上面需要的权限是 select 权限,增量迁移需要的权限要高一些,比如 select、super、replication slave、replication client 等。一般目的端需要的是读写权限,因为不仅要读还需要写。迁出:迁出源端是 RDS,是云上,目的端是本地库,所以 RDS 只需要只读权限就可以了,目的端需要的是读写权限。


四、演示操作

1、迁移数据库

启动服务器,里面有一个 alisql 的表,alisql 里面是有一些表的,然后把这些表迁移到云数据库 RDS 上面。

image.png

迁移比较简单,用 DTS。


(1)先创建一个迁移任务

image.png

①实例类型:可以选择在 ECS 上自建

②数据库类型:选择 MySQL

③端口:3306(检查端口是否打开)

④输入数据库账号和密码

测试连接

⑥实例类型:选择RDS实例

⑦输入数据库账号和密码


(2)创建一个账号

image.png

①数据库账号:aliuser

②账号类型:选择普通账号

③输入密码和确认密码

④点击确定

⑤设置读写权限


(3)创建数据库

image.png

①数据库名称:alidb

②授权账号:选择 aliuser 普通账号

③点击确定

就已经测试好,DT S已经和云服务器 ECS 里面自建的 MySQL 连接测试登录成功。建议都做一个测试。


(4)白名单

新创建的 MySQL 数据库需要设置白名单。

添加白名单

image.png

②分辑名称:test

③辑内白名单:0.0.0.0/0

④点击确定

image.png(5)DTS 会自动添加 IP 地址段到 RDS 上

①点击 alisql 迁移

②点击大括号 >

③其他的选择默认就可以了,点击预检查预启动


(6)预检查点击下一步

image.png

①选择数据传输

②点击立即购买并启动

image.png

DTS 迁移会把迁移失败的放在最上面,状态显示为迁移中,先迁移结构在迁移全量。DTS 新版本会自动刷新,在结构迁移中可以看到迁移的状态,可以看到表和全量的数据有没有迁。


迁移image.png完成后会显示以迁移多少行,然后我们可以和源库进行比对。完成之后会将整个库都迁移过来。


(7)登录实例

①输入数据库类型:选择 MySQL

②输入数据库账号和数据库密码

③点击登录

然后点击查询,点击左侧就可以知道数据都已经迁移过来了。

image.png


1、数据库备份演示

以云服务器 ECS 自建 MySQL 为例当做源端,目的端提前准备好一个 RDS 实例。先做迁移,先把表迁移过来,在里面做一些数据,然后直接用迁移的表做数据,然后备份、删除。

(1)手动备份

①点击左侧备份与恢复

image.png

②点击备份实例

image.png

备份方式:选择快照备份

image.png


(2)备份设置

①点击备份设置

image.png

点击编辑

然后选择要备份的天数、时间等。

(3)日志备份

①点击编辑

image.png

选择保留时长、空间、个数、等。


(4)点击右上角可以查看任务进度

进度表

image.png


3、备份恢复

(1)备份完成以后点击数据恢复


 image.png


(2)创建一个新的实例

计费方式:选择按量付费

还原方式:点击按时间点

选择时间(精确到秒级)


image.png 


4、删除数据

(1)选择要删除的表

image.png

(2)点击选择管理表

(3)点击删除表

 

相关文章
|
关系型数据库 分布式数据库 PolarDB
PolarDB 开源基础教程系列 7.2 应用实践之 跨境电商场景
本文介绍了如何在跨境电商场景中快速判断商标或品牌侵权,避免因侵权带来的法律纠纷。通过创建品牌表并使用PostgreSQL的pg_trgm插件和GIN索引,实现了高性能的字符串相似匹配功能。与传统方法相比,PolarDB|PostgreSQL的方法不仅提升了上万倍的查询速度,还解决了传统方法难以处理的相似问题检索。具体实现步骤包括创建品牌表、插入随机品牌名、配置pg_trgm插件及索引,并设置相似度阈值进行高效查询。此外,文章还探讨了字符串相似度计算的原理及应用场景,提供了进一步优化和扩展的方向。
405 11
|
SQL 关系型数据库 分布式数据库
PolarDB 开源基础教程系列 7.5 应用实践之 TPCH性能优化
PolarDB在复杂查询、大数据量计算与分析场景的测试和优化实践.
445 7
|
搜索推荐 关系型数据库 分布式数据库
PolarDB 开源基础教程系列 7.3 应用实践之 精准营销场景
本文介绍了基于用户画像的精准营销技术,重点探讨了如何通过标签组合快速圈选目标人群。实验分为三部分: 1. **传统方法**:使用字符串存储标签并进行模糊查询,但性能较差,每次请求都需要扫描全表。 2. **实验1**:引入`pg_trgm`插件和GIN索引,显著提升了单个模糊查询条件的性能。 3. **实验2**:改用数组类型存储标签,并结合GIN索引加速包含查询,性能进一步提升。 4. **实验3**:利用`smlar`插件实现近似度过滤,支持按标签重合数量或比例筛选。
266 3
|
8月前
|
存储 SQL 关系型数据库
MySQL中binlog、redolog与undolog的不同之处解析
每个都扮演回答回溯与错误修正机构角色: BinLog像历史记载员详细记载每件大大小小事件; RedoLog则像紧急救援队伍遇见突發情況追踪最后活动轨迹尽力补救; UndoLog就类似时间机器可倒带历史让一切归位原始样貌同时兼具平行宇宙观察能让多人同时看见各自期望看见历程而互不干扰.
479 9
|
SQL 关系型数据库 MySQL
深入解析MySQL的EXPLAIN:指标详解与索引优化
MySQL 中的 `EXPLAIN` 语句用于分析和优化 SQL 查询,帮助你了解查询优化器的执行计划。本文详细介绍了 `EXPLAIN` 输出的各项指标,如 `id`、`select_type`、`table`、`type`、`key` 等,并提供了如何利用这些指标优化索引结构和 SQL 语句的具体方法。通过实战案例,展示了如何通过创建合适索引和调整查询语句来提升查询性能。
3253 10
|
9月前
|
存储 SQL 关系型数据库
MySQL 核心知识与索引优化全解析
本文系统梳理了 MySQL 的核心知识与索引优化策略。在基础概念部分,阐述了 char 与 varchar 在存储方式和性能上的差异,以及事务的 ACID 特性、并发事务问题及对应的隔离级别(MySQL 默认 REPEATABLE READ)。 索引基础部分,详解了 InnoDB 默认的 B+tree 索引结构(多路平衡树、叶子节点存数据、双向链表支持区间查询),区分了聚簇索引(数据与索引共存,唯一)和二级索引(数据与索引分离,多个),解释了回表查询的概念及优化方法,并分析了 B+tree 作为索引结构的优势(树高低、效率稳、支持区间查询)。 索引优化部分,列出了索引创建的六大原则
229 2
|
9月前
|
存储 SQL 关系型数据库
MySQL 核心知识与性能优化全解析
我整理的这份内容涵盖了 MySQL 诸多核心知识。包括查询语句的书写与执行顺序,多表查询的连接方式及内、外连接的区别。还讲了 CHAR 和 VARCHAR 的差异,索引的类型、底层结构、聚簇与非聚簇之分,以及回表查询、覆盖索引、左前缀原则和索引失效情形,还有建索引的取舍。对比了 MyISAM 和 InnoDB 存储引擎的不同,提及性能优化的多方面方法,以及超大分页处理、慢查询定位与分析等,最后提到了锁和分库分表可参考相关资料。
199 0
|
10月前
|
关系型数据库 MySQL
MySQL字符串拼接方法全解析
本文介绍了四种常用的字符串处理函数及其用法。方法一:CONCAT,用于基础拼接,参数含NULL时返回NULL;方法二:CONCAT_WS,带分隔符拼接,自动忽略NULL值;方法三:GROUP_CONCAT,适用于分组拼接,支持去重、排序和自定义分隔符;方法四:算术运算符拼接,仅适用于数值类型,字符串会尝试转为数值处理。通过示例展示了各函数的特点与应用场景。
|
SQL 运维 关系型数据库
MySQL Binlog 日志查看方法及查看内容解析
本文介绍了 MySQL 的 Binlog(二进制日志)功能及其使用方法。Binlog 记录了数据库的所有数据变更操作,如 INSERT、UPDATE 和 DELETE,对数据恢复、主从复制和审计至关重要。文章详细说明了如何开启 Binlog 功能、查看当前日志文件及内容,并解析了常见的事件类型,包括 Format_desc、Query、Table_map、Write_rows、Update_rows 和 Delete_rows 等,帮助用户掌握数据库变化历史,提升维护和排障能力。
|
人工智能 关系型数据库 分布式数据库
PolarDB 开源基础教程系列 7.4 应用实践之 AI大模型外脑
PolarDB向量数据库插件通过实现通义大模型AI的外脑,解决了通用大模型无法触达私有知识库和产生幻觉的问题。该插件允许用户将新发现的知识和未训练的私有知识分段并转换为向量,存储在向量数据库中,并创建索引以加速相似搜索。当用户提问时,系统将问题向量化并与数据库中的向量进行匹配,找到最相似的内容发送给大模型,从而提高回答的准确性和相关性。此外,PolarDB支持多种编程语言接口,如Python,使数据库具备内置AI能力,极大提升了数据处理和分析的效率。
694 4

推荐镜像

更多