찾다
데이터 베이스MySQL 튜토리얼xtrabackup의 백업 원리에 대한 자세한 소개
xtrabackup의 백업 원리에 대한 자세한 소개Jun 23, 2017 pm 01:38 PM
xtrabackup원칙지원

Percona XtraBackup작동 방식

Percona XtraBackup은 InnoDB를 기반으로 한 충돌 복구 기능입니다. InnoDB 데이터 파일을 복사하여 내부적으로 일치하지 않는 데이터가 발생하지만 파일에 대해 충돌 복구를 수행하여 다시 일관되고 사용 가능한 데이터베이스로 만듭니다.

이것은 InnoDB가 트랜잭션 로그라고도 알려진 리두 로그를 유지 관리하기 때문입니다. 여기에는 InnoDB 데이터의 모든 변경 사항에 대한 기록이 포함됩니다. InnoDB가 시작되면 데이터 파일과 트랜잭션 로그를 확인하고 두 단계를 수행합니다. 커밋된 트랜잭션 로그 항목을 데이터 파일에 적용하고 데이터를 수정했지만 커밋하지 않은 모든 트랜잭션에 대해 실행 취소 작업을 수행합니다.

Percona XtraBackup은 LSN(로그 시퀀스 번호)을 기록하는 것으로 시작한 다음 데이터 파일을 복사합니다. 이 작업은 완료하는 데 짧은 시간이 걸리므로 파일이 변경되면 서로 다른 시점의 데이터베이스 상태가 반영됩니다. 동시에 Percona XtraBackup은 트랜잭션 로그 파일을 모니터링하고 변경 사항을 복사하는 백그라운드 프로세스를 실행합니다. Percona XtraBackup 트랜잭션 로그는 순환 방식으로 기록되고 일정 기간 후에 재사용될 수 있으므로 이 작업을 지속적으로 수행해야 합니다. Percona XtraBackup데이터 파일 실행 시작 이후 모든 변경 사항에 대해 트랜잭션 로깅이 필요합니다.

Percona XtraBackup은 가벼운 대안으로 백업 잠금을 사용합니다. 이 기능은 Percona Server 5.6+에서 사용할 수 있습니다. Percona XtraBackup이 기능을 사용하면 InnoDB가 아닌 데이터를 자동으로 복사하여 InnoDB 테이블을 수정하는 DML 쿼리를 차단하지 않습니다. 서버가 백업 잠금을 지원하는 경우 xtrabackup은 먼저 InnoDB 데이터를 복사하고 MyISAM 테이블 및 .frm 파일을 실행 및 복사합니다. 완료되면 파일 백업이 시작됩니다. BACKUP.par에 대한 .frm, .MRG, .MYD, .MYI, .TRG, FLUSH TABLES WITH READ LOCKLOCK TABLES FOR BACKUP.par

참고

잠금은 MyISAM 및 기타 비 InnoDB 테이블에서만 Percona에서만 잠금됩니다. XtraBackup 완료 후 모든 InnoDB/XtraDB 데이터와 로그를 백업합니다. Percona XtraBackup은 가벼운 대안으로 백업 잠금을 사용합니다. 이 기능은 Percona Server 5.6+에서 사용할 수 있습니다. Percona XtraBackup이 기능을 사용하면 InnoDB가 아닌 데이터를 자동으로 복사하여 InnoDB 테이블을 수정하는 DML 쿼리를 차단하지 않습니다. 읽기 잠금으로 테이블을 플러시

이후 xtrabackup은 바이너리 로그 위치 또는 보고를 변경할 수 있는 모든 작업을 차단합니다. 그런 다음 xtrabackup은 REDO 로그 파일 복사 및 바이너리 로그 좌표 가져오기를 완료합니다. 이 작업이 완료되면 xtrabackup은 바이너리 로그와 테이블의 잠금을 해제합니다. BACKUPExec_Master_Log_PosExec_Gtid_SetSHOW MASTER/SLAVE STATUS에 대한 잠금 BINLOG

마지막으로 바이너리 로그 위치가 STDERR에 인쇄되고 모든 것이 정상이면 xtrabackup은 0을 반환하여 종료됩니다.

STDERR의 xtrabackup은 어떤 파일에도 기록되지 않는다는 점에 유의해야 합니다. 예를 들어 파일로 리디렉션해야 합니다. xtrabackup OPTIONS2> backupout.log

백업된 디렉터리에 다음 파일도 생성됩니다.

준비 단계에서 Percona XtraBackup은 복제된 트랜잭션 로그 파일을 사용하여 복제된 데이터 파일에 대한 충돌 복구를 수행합니다. 이 작업이 완료되면 데이터베이스를 복원하고 사용할 수 있습니다.

백업된 MyISAMInnoDB 테이블은 준비(복원) 프로세스 후 InnoDB의 데이터가 롤백이 아닌 백업이 완료된 지점으로 롤포워드되므로 결국 서로 일관성을 갖게 됩니다. 시작된 지점까지. 이 시점이 찍은 위치와 일치하므로 MyISAM 데이터와 준비된 InnoDB 데이터가 동기화됩니다. FLUSH TABLES WITHREAD LOCK

간단히 말하면, 이러한 도구를 사용하면 데이터 파일 복사, 로그 파일 복사, 다양한 데이터 조합에 로그 적용을 통해 스트리밍 및 증분 백업과 같은 작업을 수행할 수 있습니다.

위 내용은 xtrabackup의 백업 원리에 대한 자세한 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
趣谈ChatGPT原理及算法趣谈ChatGPT原理及算法Apr 27, 2023 pm 08:46 PM

​去年12月1日,OpenAI推出人工智能聊天原型ChatGPT,再次赚足眼球,为AI界引发了类似AIGC让艺术家失业的大讨论。ChatGPT是一种专注于对话生成的语言模型。它能够根据用户的文本输入,产生相应的智能回答。这个回答可以是简短的词语,也可以是长篇大论。其中GPT是GenerativePre-trainedTransformer(生成型预训练变换模型)的缩写。通过学习大量现成文本和对话集合(例如Wiki),ChatGPT能够像人类那样即时对话,流畅的回答各种问题。(当然回答速度比人还是

深入解析MySQL MVCC 原理与实现深入解析MySQL MVCC 原理与实现Sep 09, 2023 pm 08:07 PM

深入解析MySQLMVCC原理与实现MySQL是目前最流行的关系型数据库管理系统之一,它提供了多版本并发控制(MultiversionConcurrencyControl,MVCC)机制来支持高效并发处理。MVCC是一种在数据库中处理并发事务的方法,可以提供高并发和隔离性。本文将深入解析MySQLMVCC的原理与实现,并结合代码示例进行说明。一、M

深入解析Struts2框架的工作原理与实现方式深入解析Struts2框架的工作原理与实现方式Jan 05, 2024 pm 04:08 PM

解读Struts2框架的原理及实现方式引言:Struts2作为一种流行的MVC(Model-View-Controller)框架,被广泛应用于JavaWeb开发中。它提供了一种将Web层与业务逻辑层分离的方式,并且具有灵活性和可扩展性。本文将介绍Struts2框架的基本原理和实现方式,同时提供一些具体的代码示例来帮助读者更好地理解该框架。一、框架原理:St

Golang实现继承方法的基本原理和方式Golang实现继承方法的基本原理和方式Jan 20, 2024 am 09:11 AM

Golang继承方法的基本原理与实现方式在Golang中,继承是面向对象编程的重要特性之一。通过继承,我们可以使用父类的属性和方法,从而实现代码的复用和扩展性。本文将介绍Golang继承方法的基本原理和实现方式,并提供具体的代码示例。继承方法的基本原理在Golang中,继承是通过嵌入结构体的方式实现的。当一个结构体嵌入另一个结构体时,被嵌入的结构体就拥有了嵌

深入探究Maven生命周期的功能和机制深入探究Maven生命周期的功能和机制Jan 04, 2024 am 09:09 AM

深入理解Maven生命周期的作用与原理Maven是一款非常流行的项目管理工具,它使用一种灵活的构建模型来管理项目的构建、测试和部署等任务。Maven的核心概念之一就是生命周期(Lifecycle),它定义了一系列阶段(Phase)和每个阶段的目标(Goal),帮助开发人员和构建工具按照预定的顺序执行相关操作。Maven的生命周期主要分为三套:Clean生命周

深入理解Java反射机制的原理与应用深入理解Java反射机制的原理与应用Dec 23, 2023 am 09:09 AM

深入理解Java反射机制的原理与应用一、反射机制的概念与原理反射机制是指在程序运行时动态地获取类的信息、访问和操作类的成员(属性、方法、构造方法等)的能力。通过反射机制,我们可以在程序运行时动态地创建对象、调用方法和访问属性,而不需要在编译时知道类的具体信息。反射机制的核心是java.lang.reflect包中的类和接口。其中,Class类代表一个类的字节

了解PHP底层开发原理:基础知识和概念介绍了解PHP底层开发原理:基础知识和概念介绍Sep 10, 2023 pm 02:31 PM

了解PHP底层开发原理:基础知识和概念介绍作为一名PHP开发者,了解PHP底层开发原理是非常重要的。正因为如此,本文将介绍PHP底层开发的基础知识和概念,帮助读者更好地理解和应用PHP。一、什么是PHP?PHP(全称:HypertextPreprocessor)是一门开源的脚本语言,主要用于Web开发。它可以嵌入到HTML文档中,通过服务器解释执行,并生成

PHP 防抖和防重复提交技术的原理与应用PHP 防抖和防重复提交技术的原理与应用Oct 12, 2023 pm 12:16 PM

PHP防抖和防重复提交技术的原理与应用随着互联网的发展,用户在进行网页操作时,往往会出现频繁点击或重复提交的情况,这会给系统带来一定的负担和安全隐患。为了解决这一问题,开发人员通常会采用防抖和防重复提交技术。本文将介绍PHP中防抖和防重复提交技术的原理,并给出相应的代码示例。一、防抖技术的原理与应用防抖技术旨在解决用户频繁点击或操作的问题,通过延迟执行或合

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

에디트플러스 중국어 크랙 버전

에디트플러스 중국어 크랙 버전

작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

Dreamweaver Mac版

Dreamweaver Mac版

시각적 웹 개발 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

VSCode Windows 64비트 다운로드

VSCode Windows 64비트 다운로드

Microsoft에서 출시한 강력한 무료 IDE 편집기