NDB Cluster 存储引擎物理备份

时间:2021-11-22 15:06:51

NDB Cluster 存储引擎物理备份
NDB Cluster 存储引擎也是一款事务性存储引擎,和Innodb 一样也有redo 日志。NDB
Cluter 存储引擎自己提供了备份功能,可以通过相关的命令实现。当然,停机冷备的方法
也是有效的。
在线联机备份步骤如下:
1、连接上管理服务器;
2、在管理节点上面执行“START BACKUP” 命令;
3、在管理节点上发出备份指令之后,管理节点会通知所有数据节点开始进行备份,并
反馈通知结果。
4、管理节点在通知发出备份指令之前会生成一个备份号来唯一定位这次备份所产生
的备份集。当各数据节点收到备份指令之后,就会开始进行备份操作。
5、当所有数据节点都完成备份之后,管理节点才会反馈“备份完成”的信息给客户端。

由于NDB Cluster 的备份,备份指令是从管理节点发起,且并不会等待备份完成就会
返回,所以也没办法直接通过“Ctrl + c” 或者其他方式来中断备份进程,所以NDB
Cluster 提供了相应的命令来中断当前正在进行的备份操作,如下:
1、登录管理节点
2、执行“ABORT BACKUP backup_id”,命令中的backup_id 即之前发起备份命令的
时候所产生的备份号。
3、管理结带你上会用消息“放弃指示的备份backup_id”确认放弃请求,注意,则时
候其实并没有收到数据节点对请求的实际回应。
4、然后管理节点才会将中断备份的指令发送到所有数据节点上面,然后当各个数据节
点都中断备份并删除了当前产生的备份文件之后,才会返回“备份backup_id 因*
**而放弃”。至此,中断备份操作完成。

通过NDB Cluster 存储引擎自己的备份命令来进行备份之后,会将前面所提到的三种
文件存放在参与备份的节点上面,且被存放在三个不同的文件中,类似如下:
BACKUP-backup_id.node_id.ctl,内容包含相关的控制信息和元数据的控制文件。每个
节点均会将相同的表定义(对于Cluster 中的所有表)保存在自己的该文件中。
BACKUP-backup_id-n.node_id.data,数据备份文件,被分成多个不同的片段来保存,
在备份过程中,不同的节点将保存不同的备份数据所产生的片段,每个节点保存的文件都会
有信息指明数据所属表的部分,且在备份片段文件最后还包含了最后的校验信息,以确保备
份能够正确恢复。
BACKUP-backup_id.node_id.log,事务日志备份文件中仅包含已提交事务的相关信息,
且仅保存已在备份中保存的表上的事务,各个阶段所保存的日志信息也不一样,因为仅仅针
对各节点所包含的数据记录相关的日志信息。
上面的备份文件命名规则中,backup_id 是指备份号,不同的备份集会针对有一个不
同的备份号,node_id 则是指明该备份文件属于哪个数据节点,而在数据文件的备份文件中
的n 则是指明片段号。

恢复的时候必须要将备份集中文件恢复到对应的数据节点之上,否则无法正确完成恢
复过程。
通过NDB Cluster 所提供的备份命令来生成的备份集,需要使用专用的备份恢复软
件ndb_restore 来进行。ndb_restore 软件将从备份集中读取出备份相关的控制信息,而
且ndb_restore 软件必须在单独的数据节点上面分别进行。所以当初备份进行过程中有多
少数据节点,现在就需要运行多少次ndb_restore。而且,首次通过ndb_restore 来进行
恢复的话,还必须恢复元数据,也就是会重建所有的数据库和表。

数据库性能优化:
商业需求合理化,
系统架构最优化,
逻辑实现精简化,
硬件设施理性化。

ssh sddxwins@192.168.1.2 ~/toolbar_stat/shell/disk_warning_v3.sh

select distinct mdn from

NDB Cluster 存储引擎物理备份的更多相关文章

  1. 第 3 章 MySQL 存储引擎简介

    第 3 章 MySQL 存储引擎简介 前言 3.1 MySQL 存储引擎概述 MyISAM 存储引擎是 MySQL 默认的存储引擎,也是目前 MySQL 使用最为广泛的存储引擎之一.他的前身就是我们在 ...

  2. MySql(十一):MySQL性能调优——常用存储引擎优化

    一.前言 MySQL 提供的非常丰富的存储引擎种类供大家选择,有多种选择固然是好事,但是需要我们理解掌握的知识也会增加很多.本章将介绍最为常用的两种存储引擎进行针对性的优化建议. 二.MyISAM存储 ...

  3. MySQL性能调优与架构设计——第11章 常用存储引擎优化

    第11章 常用存储引擎优化 前言: MySQL 提供的非常丰富的存储引擎种类供大家选择,有多种选择固然是好事,但是需要我们理解掌握的知识也会增加很多.每一种存储引擎都有各自的特长,也都存在一定的短处. ...

  4. MySQL性能调优与架构设计——第3章 MySQL存储引擎简介

    第3章 MySQL存储引擎简介 3.1 MySQL 存储引擎概述 MyISAM存储引擎是MySQL默认的存储引擎,也是目前MySQL使用最为广泛的存储引擎之一.他的前身就是我们在MySQL发展历程中所 ...

  5. 详解mysql体系结构和存储引擎

    概述 之前整理的一些mysql方面内容,适合做备忘,因为我基本不会去记这些概念性的东西,大家做个了解就可以了. 一.定义数据库和实例 1.数据库: 物理操作系统文件或其他形式文件类型的集合. 在MyS ...

  6. 关于MySQL事务和存储引擎常见FAQ

    1.什么是事务? 事务就是「一组原子性的SQL查询」,或者说一个独立的工作单元.如果数据库引擎能够成功地对数据库应用该组查询的全部语句,那么就执行该组查询.如果其中有任何一条语句因为崩溃或其他原因无法 ...

  7. MySQL数据库----存储引擎

    什么是存储引擎? 存储引擎说白了就是如何存储数据.如何为存储的数据建立索引和如何更新.查询数据等技术的实现方法.因为在关系数据库中数据的存储是以表的形式存储的,所以存储引擎也可以称为表类型(即存储和操 ...

  8. mysql缓存、存储引擎

    一.         mysql查询缓存 查询缓存不是mysql的子系统,却是查询优化和执行子系统不可缺少的组成部分.它不仅可以缓存查询结果,还可以缓存查询结果本身.如果某个查询的结果就在缓存里, 系 ...

  9. MySQL支持多种存储引擎

    MySQL的强大之处在于它的插件式存储引擎,我们可以基于表的特点使用不同的存储引擎,从而达到最好的性能. MySQL有多种存储引擎:MyISAM.InnoDB.MERGE.MEMORY(HEAP).B ...

随机推荐

  1. 常用vim插件的安装、使用和管理

      1.Ctags Ctags工具是用来遍历源代码文件生成tags文件,这些tags文件能被编辑器或者其他工具用来快速查找定位源代码中的符号,入变量名,函数名等.比如,tags文件就是Taglist和 ...

  2. Hibernate 相关面试题

    谈谈你对Hibernate的理解 1. 面向对象设计的软件内部运行过程可以理解成就是在不断创建各种新对象.建立对象之间的关系,调用对象的方法来改变各个对象的状态和对象消亡的过程,不管程序运行的过程和操 ...

  3. Asp.Net Mvc5新特性

    One ASP.NET:统一平台 BootStrap:免费Css响应式页面 路由标记属性:简单,控制器,操作,前缀,参数,URL ASP.NET WEB API 2:路由标记属性,Oauth2.0,O ...

  4. 无良教程-破解SublimeText3

    这教程实际上并不是倡导大伙儿去破解软件然后传播出去以侵犯作者的权益,纯粹是技术分享,如果大伙儿觉得Low了,可立马删除. sublime text是我非常喜欢的一款编辑器,在ubuntu上,之前用的一 ...

  5. 团队作业8——Beta 阶段冲刺5th day

    一.当天站立式会议 二.每个人的工作 (1)昨天已完成的工作(具体在表格中) 支付功能测试 (2)今天计划完成的工作(具体如下) 完善订单功能 (3)工作中遇到的困难(在表格中) 成员 昨天已完成的工 ...

  6. Android图表库MPAndroidChart(十二)——来点不一样的,正负堆叠条形图

    Android图表库MPAndroidChart(十二)--来点不一样的,正负堆叠条形图 接上篇,今天要说的,和上篇的类似,只是方向是有相反的两面,我们先看下效果 实际上这样就导致了我们的代码是比较类 ...

  7. Spring Boot默认的JSON解析框架设置

    方案一:启动类继承WebMvcConfigurerAdapter,覆盖方法configureMessageConverters ... @SpringBootApplication public cl ...

  8. SGU 138. Games of Chess 构造 难度:2

    138. Games of Chess time limit per test: 0.25 sec. memory limit per test: 4096 KB N friends gathered ...

  9. 转!java产生不重复随机数

    private static void testC(int sz) { long startTime = System.currentTimeMillis(); //开始测试时间 Random rd ...

  10. ftp禁止切换回上级目录

    打开并编辑/etc/vsd/vsd.conf # vi /etc/vsd/vsftpd.conf 取消如下行注释 chroot_list_enable=YES 保存并重启vsftpd # /etc/i ...