RDS全量物理备份谁才能读

简介:
有个客户有个需求:想把5.6版本的RDS for MySQL上周的数据呈现出来,和现在的数据进行比对,以进行其他业务操作。那么该怎么办呢?
方法有两个:
1.使用RDS for MySQL自带的方便快捷的恢复方式(克隆实例),可以通过备份集和时间点进行恢复,只需要片刻的时间就完成了。
2. 把自动备份(物理备份)下载下来,然后在ECS自建MySQL的server端上读取这部分数据。
相对于方法1,方法2更加麻烦一些,但是可以节省一些支出。
针对这个客户的现状,当然首推方法1,难度很低,很快捷。但是客户选择方法2。那么问题来了:什么版本的MySQL的server才能读取RDS上物理备份的数据呢。
因为RDS是5.6的,所以客户选择了5.6.38这个版本的MySQL,安装完成登陆之后发现数据库上是有这些表的名称,但是select时总是处出现ERROR 1146 (42S02)的报错,百度之后网上给的解释是共享表空间ibdata1文件也要copy过去,但是RDS自然不用考虑这个问题。那么会是什么问题呢?
自己亲自测试一下:
MySQL5.6.38
[root@172-16-10-204 /data/alisql/data] #mysql -uroot -h127.0.0.1 -P3308
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 7
Server version: 5.6.38 MySQL Community Server (GPL)
Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

root@(none) 05:51:46>use ceshi;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed

root@ceshi 05:51:51>show tables;
+-----------------+
| Tables_in_ceshi |
+-----------------+
| c1              |
| c2              |
| student1        |
| test            |
+-----------------+
4 rows in set (0.00 sec)

root@ceshi 05:51:53>select * from c1;
ERROR 1146 (42S02): Table 'ceshi.c1' doesn't exist
MySQL5.6的版本可以正常启动,但是就是无法读取表的数据。用mysql_upgrade的时候会报错,显示mysql库内的许多表都不存在,一时很是疑惑。既然5.6的不行,索性就使用5.7的尝试一下吧:

MySQL5.7.20
[root@172-16-10-204 /root]
#mysql -uroot -h127.0.0.1 -P3308
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 13
Server version: 5.7.20 MySQL Community Server (GPL)
Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

root@(none) 05:56:05>use ceshi;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed

root@ceshi 05:56:12>select * from c1;
+------+------+------+------+
| a    | b    | c    | d    |
+------+------+------+------+
|    2 |    1 |    2 | NULL |
|    4 |    4 |    4 | NULL |
|    5 |    5 |    5 | NULL |
|    6 |    6 |    6 | NULL |
|    7 |    7 |    7 | NULL |
|    8 |    8 |    8 | NULL |
|    9 |    9 |    9 | NULL |
|   10 |   10 |   10 | NULL |
|    1 |    1 |    1 | NULL |
+------+------+------+------+
9 rows in set (0.00 sec)
结果还是既是意料之外,又是情理之中的,因为RDS for MySQL虽然是5.6的版本,但是这不是原生纯正的MySQL,而是阿里巴巴修改过源码的alisql,里面加了许多5.7的功能,所以用5.6的版本再去读取这部分数据的时候可能不会那么完美的兼容。
总结:小版本更迭时,底层文件没有太大的差异,server层可能会继续使用这部分数据。大版本的更迭:1.如果是高版本server读取低版本的全量物理备份的时候,大概率是可以读取的(不是必然)。2.如果是低版本server读取高版本的全量物理备份的时候,大概率是不可以读取的(不是必然)。
相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
关系型数据库 MySQL Shell
MySQL 备份 Shell 脚本:支持远程同步与阿里云 OSS 备份
一款自动化 MySQL 备份 Shell 脚本,支持本地存储、远程服务器同步(SSH+rsync)、阿里云 OSS 备份,并自动清理过期备份。适用于数据库管理员和开发者,帮助确保数据安全。
|
存储 关系型数据库 MySQL
在CentOS 8.x上安装Percona Xtrabackup工具备份MySQL数据步骤。
以上就是在CentOS8.x上通过Perconaxtabbackup工具对Mysql进行高效率、高可靠性、无锁定影响地实现在线快速全量及增加式数据库资料保存与恢复流程。通过以上流程可以有效地将Mysql相关资料按需求完成定期或不定期地保存与灾难恢复需求。
946 10
|
存储 关系型数据库 MySQL
【赵渝强老师】使用select...into outfile语句备份MySQL
本文介绍了MySQL中使用`SELECT...INTO OUTFILE`语句将表数据导出为文本文件的方法。通过示例演示了如何备份员工表(emp)的数据,包括创建存储目录、设置权限、配置参数`secure_file_priv`以及解决相关错误的过程。字段分隔符和行终止符可自定义,确保数据格式符合需求。最后展示了备份文件的内容,验证操作成功。
848 36
|
存储 SQL 关系型数据库
【赵渝强老师】使用mysqldump备份MySQL
本文介绍了 MySQL 自带的逻辑备份工具 mysqldump 的使用方法。通过 mysqldump,可以将数据库中的数据转换为对应的 SQL 插入语句,便于备份和还原。文章详细说明了如何备份所有数据库、指定数据库及特定表,排除某些表不备份的操作,以及删除数据库后如何通过备份文件恢复数据。同时提供了视频讲解和具体命令示例,帮助用户更好地理解和应用该工具。
1418 5
|
关系型数据库 MySQL Linux
在Linux环境下备份Docker中的MySQL数据并传输到其他服务器以实现数据级别的容灾
以上就是在Linux环境下备份Docker中的MySQL数据并传输到其他服务器以实现数据级别的容灾的步骤。这个过程就像是一场接力赛,数据从MySQL数据库中接力棒一样传递到备份文件,再从备份文件传递到其他服务器,最后再传递回MySQL数据库。这样,即使在灾难发生时,我们也可以快速恢复数据,保证业务的正常运行。
708 28
|
存储 关系型数据库 MySQL
利用Cron表达式实现MySQL数据库的定时备份
以上就是如何使用Cron表达式和mysqldump命令实现MySQL数据库的定时备份。这种方法的优点是简单易用,而且可以根据需要定制备份的时间和频率。但是,它也有一些限制,例如,它不能备份MySQL服务器的配置文件和用户账户信息,也不能实现增量备份。如果需要更复杂的备份策略,可能需要使用专门的备份工具或服务。
541 15
|
存储 SQL 关系型数据库
【赵渝强老师】使用mydumper备份MySQL
本文介绍了使用mydumper工具进行MySQL数据库备份与恢复的操作方法。相比单线程工作的mysqldump,mydumper支持多线程,速度提升可达10倍。其功能包括事务性表快照、快速压缩、导出binlog等,并提供详细的参数说明和操作步骤。文章通过实例演示了安装mydumper、创建存储目录、全库备份、指定数据库及表备份、删除数据库以及使用myloader恢复数据的完整流程,并附带视频讲解,帮助用户更好地理解和应用该工具。
1036 0
|
安全 关系型数据库 MySQL
MySQL8使用物理文件恢复MyISAM表测试
MySQL8使用物理文件恢复MyISAM表测试
380 0
|
SQL 关系型数据库 MySQL
阿里云RDS云数据库全解析:产品功能、收费标准与活动参考
与云服务器ECS一样,关系型数据库RDS也是很多用户上云必买的热门云产品之一,阿里云的云数据库RDS主要包含RDS MySQL、RDS SQL Server、RDS PostgreSQL、RDS MariaDB等几个关系型数据库,并且提供了容灾、备份、恢复、监控、迁移等方面的全套解决方案,帮助您解决数据库运维的烦恼。本文为大家介绍阿里云的云数据库 RDS主要产品及计费方式、收费标准以及活动等相关情况,以供参考。
|
关系型数据库 MySQL 数据库
自建数据库如何迁移至RDS MySQL实例
数据库迁移是一项复杂且耗时的工程,需考虑数据安全、完整性及业务中断影响。使用阿里云数据传输服务DTS,可快速、平滑完成迁移任务,将应用停机时间降至分钟级。您还可通过全量备份自建数据库并恢复至RDS MySQL实例,实现间接迁移上云。

热门文章

最新文章

推荐镜像

更多