热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

mysql数据备份之NBU

任大炮m

概述

Veritas NetBackup简称NBU,是一款商业化的备份和恢复软件,在金融行业占据了90%以上的市场份额,除了软件产品以外也开始推自家的备份一体机。由于具有众多的硬件、操作系统、虚拟化、数据库、应用程序和存储相关技术,现代数据中心环境复杂。这正是Netbackup长期以来成为企业可信之选,一方面可降低复杂性,同时在人手有限的情况下尽量管理数据保护。NetBackup是一款面向整个企业的单一解决方案,可通过一个混合型平台发挥其功能,而且即使是用于最大、最具动态特性的环境中也只需要进行微乎其微的管理。

  • 通过统一的集成解决方案消除单点产品。

  • 通过混合型备份平台实现现代化。

  • 通过基于策略的集中管理提高工作效率。

NBUfor MySQL

NetBackup for MySQL Agent 扩展了NetBackup 的功能,以包括MySQL 数据库的备份和还原操作。代理位于NetBackup 客户端上并支持独立的设置操作。代理支持MySQL 版本5.5.5 及更高版本。NetBackup for MySQL Agent 除备份、恢复功能外,还支持:

  • 验证备份信息。

  • 查询备份。

  • 从目录库文件中删除备份信息。

  • 将还原重定向到不同于最初执行备份的客户端的另一客户端。

备份流程

NetBackupfor MySQL Agent 整体备份流程为:

  1. Agent向Mysql发出创建备份快照命令(flush tables with read lockt等)。

  2. Mysql成功执行命令后,Agent向服务器发出VSS/LVM相关创建快照命令。

  3. 快照创建成功后,挂载快照,并把MySQL备份数据发送给NBU Server。

  4. NBU Server把相关备份数据上传存储单元。

  5. NBU Serve把备份状态回传给Agent。

恢复流程

NetBackupfor MySQL Agent 整体恢复流程为:

  1. Agent向NBU Server发出恢复命令。

  2. NBU Server读取相关配置信息,把相应备份数据传给Agent。

  3. Agent利用备份数据进行恢复。

手工快照备份、恢复

NetBackup forMySQL备份原理非常简单,就是利用VSS/LVM的快照进行的数据备份,因为创建快照非常快,因此这种方式的数据库备份也对数据库影响最小。但利用快照进行MySQL数据库备份必须保证MySQL实例、lv是一对一的关系。接下来我就利用快照这种方式进行人工备份。

备份

1.确保MySQL实例使用单一lv

2.创建快照

以操作系统用户root,使用mysql客户端登陆MySQL数据库,以避免在mysql、操作系统间切换。

首先在mysql中,执行“flushtables with readlock”,使数据库把脏数据写回磁盘并处于只读状态,以保证数据备份的完整、一致性,其次记录当前的事务信息及binlog位点信息,以方便以后建立主从关系,最后创建当前mysql数据库所使用lv的快照并释放相关锁。

3.备份数据

快照创建成功后,查看lv及其快照信息

挂载快照

利用快照,进行相关数据备份

恢复

把上述备份数据传至其它主机,并在该主机创建挂载点/data,把数据还原至该挂载点即可

把备份数据解压至相应目录

启动数据库

总结

NetBackup for MySQL备份原理比较简单,首先发出执令“flushtable with read lock”、“showmasterstatus”至数据库,使数据库当前所有脏数据写回磁盘,并让数据库处理“静止”状态,获取数据库当前事务信息及binlog位点信息;其次必执行至操作系统,创建VSS/lvm相关快照,最后发“unlocktables”至数据库,使数据库回复正常。整个过程非常简单,耗时相对比较少,整体来说效率比较高且对数据库影响最小。最后再利用快照进行真正的数据备份。利用快照这种方式进行数据备份,必须保证MySQL实例与lv是一对一关系,并且保证lv所在vg有足够的空间,对于变更特别频繁的数据库来说,vg的剩余空间得和lv一样。



推荐阅读
  • http:blog.csdn.netzeo112140articledetails7675195使用TCPdump工具,抓TCP数据包。将数据包上传到PC,通过Wireshark查 ... [详细]
  • Java EE 平台集成了多种服务、API 和协议,旨在支持基于 Web 的多层应用程序开发。本文将详细介绍 Java EE 中的 13 种关键技术规范,帮助开发者更好地理解和应用这些技术。 ... [详细]
  • 本文介绍了 Go 语言中的高性能、可扩展、轻量级 Web 框架 Echo。Echo 框架简单易用,仅需几行代码即可启动一个高性能 HTTP 服务。 ... [详细]
  • Nacos 0.3 数据持久化详解与实践
    本文详细介绍了如何将 Nacos 0.3 的数据持久化到 MySQL 数据库,并提供了具体的步骤和注意事项。 ... [详细]
  • ABP框架是ASP.NET Boilerplate的简称,它不仅是一个开源且文档丰富的应用程序框架,还提供了一套基于领域驱动设计(DDD)的最佳实践架构模型。本文将详细介绍ABP框架的特点、项目结构及其在Web API优先架构中的应用。 ... [详细]
  • MySQL 5.7 服务端在 Windows 上的安装与配置
    本文详细介绍了在 Windows 系统上安装和配置 MySQL 5.7 服务端的方法,包括 my.ini 配置文件的设置、初始化数据库、启动服务以及设置用户权限等步骤。 ... [详细]
  • 图数据库与传统数仓实现联邦查询使用CYPHER实现从关系数据库过滤时间序列指标一、MySQL得到研报实体在Oracle中的唯一ID二、Oracle中过滤时间序列数据三、CYPHER ... [详细]
  • 2023年最新指南:如何在PHP中屏蔽警告和错误
    本文详细介绍了如何在PHP中屏蔽警告和错误,包括多种方法和最佳实践,帮助开发者提升代码质量和安全性。 ... [详细]
  • centos 7.0 lnmp成功安装过程(很乱)
    下载nginx[rootlocalhostsrc]#wgethttp:nginx.orgdownloadnginx-1.7.9.tar.gz--2015-01-2412:55:2 ... [详细]
  • vsftpd配置(虚拟用户、匿名用户登录)
    一、ftp服务搭建(一)概述1.ftp连接及传输模式(1)控制连接TCP21,用于发送FTP命令信息 ... [详细]
  • 本文介绍了如何使用Postman构建和发送HTTP请求,包括四个主要部分:方法(Method)、URL、头部(Headers)和主体(Body)。特别强调了Body部分的重要性,并详细说明了不同类型的请求体。 ... [详细]
  • 本文介绍了如何查看PHP网站及其源码的方法,包括环境搭建、本地测试、源码查看和在线查找等步骤。 ... [详细]
  • 深入理解Redis中的字典实现
    本文详细介绍了Redis中字典的实现机制,包括其底层数据结构、哈希表与哈希节点的关系、元素添加方法及rehash操作的具体流程。 ... [详细]
  • 无论是在迁移到云服务还是更换云服务商的过程中,数据迁移都是一个至关重要的环节。本文将探讨数据迁移中可能遇到的问题及解决方案,包括路径问题、速度问题和数据完整性等。 ... [详细]
  • Docker 环境下 MySQL 双主同步配置指南
    本文介绍了如何在 Docker 环境中配置 MySQL 的双主同步,包括目录结构的创建、配置文件的编写、容器的创建与设置以及最终的验证步骤。 ... [详细]
author-avatar
殇心Long
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有