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

本文涉及的产品
云数据库 RDS SQL Server,基础系列 2核4GB
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
简介: 快速学习 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)点击删除表

 

相关文章
|
1月前
|
数据库 索引
深入探索数据库索引技术:回表与索引下推解析
【10月更文挑战第15天】在数据库查询优化的领域中,回表和索引下推是两个核心概念,它们对于提高查询性能至关重要。本文将详细解释这两个术语,并探讨它们在数据库操作中的作用和影响。
48 3
|
2月前
|
存储 NoSQL 关系型数据库
数据库技术深度解析:从基础到进阶
【10月更文挑战第17天】数据库技术深度解析:从基础到进阶
69 0
|
1月前
|
存储 负载均衡 监控
数据库多实例的深入解析
【10月更文挑战第24天】数据库多实例是一种重要的数据库架构方式,它为数据库的高效运行和灵活管理提供了多种优势。在实际应用中,需要根据具体的业务需求和技术环境,合理选择和配置多实例,以充分发挥其优势,提高数据库系统的性能和可靠性。随着技术的不断发展和进步,数据库多实例技术也将不断完善和创新,为数据库管理带来更多的可能性和便利。
97 57
|
19天前
|
SQL 关系型数据库 MySQL
12 PHP配置数据库MySQL
路老师分享了PHP操作MySQL数据库的方法,包括安装并连接MySQL服务器、选择数据库、执行SQL语句(如插入、更新、删除和查询),以及将结果集返回到数组。通过具体示例代码,详细介绍了每一步的操作流程,帮助读者快速入门PHP与MySQL的交互。
34 1
|
21天前
|
SQL 关系型数据库 MySQL
go语言数据库中mysql驱动安装
【11月更文挑战第2天】
35 4
|
28天前
|
监控 关系型数据库 MySQL
数据库优化:MySQL索引策略与查询性能调优实战
【10月更文挑战第27天】本文深入探讨了MySQL的索引策略和查询性能调优技巧。通过介绍B-Tree索引、哈希索引和全文索引等不同类型,以及如何创建和维护索引,结合实战案例分析查询执行计划,帮助读者掌握提升查询性能的方法。定期优化索引和调整查询语句是提高数据库性能的关键。
155 1
|
1月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
87 2
|
1月前
|
存储 关系型数据库 MySQL
MySQL vs. PostgreSQL:选择适合你的开源数据库
在众多开源数据库中,MySQL和PostgreSQL无疑是最受欢迎的两个。它们都有着强大的功能、广泛的社区支持和丰富的生态系统。然而,它们在设计理念、性能特点、功能特性等方面存在着显著的差异。本文将从这三个方面对MySQL和PostgreSQL进行比较,以帮助您选择更适合您需求的开源数据库。
118 4
|
15天前
|
运维 关系型数据库 MySQL
安装MySQL8数据库
本文介绍了MySQL的不同版本及其特点,并详细描述了如何通过Yum源安装MySQL 8.4社区版,包括配置Yum源、安装MySQL、启动服务、设置开机自启动、修改root用户密码以及设置远程登录等步骤。最后还提供了测试连接的方法。适用于初学者和运维人员。
125 0
|
2月前
|
存储 关系型数据库 MySQL
如何在MySQL中创建数据库?
【10月更文挑战第16天】如何在MySQL中创建数据库?

推荐镜像

更多