实战:percona-xtrabackup2.1.9formysql5.6.19
----1.编译安装percona-xtrabackup yum install cmake gcc gcc-c++ libaio libaio-devel automake autoconf bzr \ bison libtool ncurses-devel zlib-devel libgcrypt-devel wget http://www.percona.com/downloads/XtraBackup/XtraBackup-2.1.9/source/perc
----1.编译安装percona-xtrabackup
yum install cmake gcc gcc-c++ libaio libaio-devel automake autoconf bzr \
bison libtool ncurses-devel zlib-devel libgcrypt-devel
wget http://www.percona.com/downloads/XtraBackup/XtraBackup-2.1.9/source/percona-xtrabackup-2.1.9.tar.gz
tar xvzf percona-xtrabackup-2.1.9.tar.gz
mkdir -p /usr/local/xtrabackup/
mv percona-xtrabackup-2.1.9 /usr/local/xtrabackup/
cd /usr/local/xtrabackup/percona-xtrabackup-2.1.9
AUTO_DOWNLOAD="yes" ./utils/build.sh innodb56
/*****重新安装需要
rm -rf /usr/bin/innobackupex
rm -rf /usr/bin/xtrabackup
***********/
cp innobackupex /usr/bin/
cp src/xtrabackup_56 /usr/bin/
ln -s /usr/local/mysql/bin/* /usr/bin/
---2.安装相关插件
wget http://www.percona.com/downloads/percona-toolkit/LATEST/RPM/percona-toolkit-2.2.8-1.noarch.rpm
yum install perl-DBI
yum install perl-DBD-MySQL
yum install perl-Time-HiRes
yum install perl-IO-Socket-SSL
rpm -ivh percona-toolkit-2.2.8-1.noarch.rpm
*****************************************************************
普通备份和还原
*****************************************************************
----1.备份
create table t1
(
sid int not null ,
sname varchar(100) not null
)engine=innodb charset=gbk ;
DELIMITER //
create PROCEDURE proc1()
BEGIN
DECLARE i int DEFAULT 0;
set i=1 ;
set autocommit=0;
WHILE i
INSERT INTO t1 values(i,'我');
set i=i+1;
END WHILE;
commit;
set autocommit=1;
END
//
DELIMITER ;
call proc1;
---2.备份数据
innobackupex --user=root --password=password --defaults-file=/usr/local/mysql/my.cnf \
--port=3306 /backup
---3.恢复数据
service mysql stop
mv /usr/local/mysql/data/innodb_data/ /wind/
或
cp -rvf innodb_data/ /wind/
----datadir数据目录和日志目录需要为空
rm -rf /usr/local/mysql/innodb_data/*
rm -rf /usr/local/mysql/data/*
rm -rf /usr/local/mysql/mysql_logs/innodb_log/*
----4.准备日志(默认使用内存100M)
innobackupex --ibbackup=xtrabackup_56 --user=root --password=password --defaults-file=/usr/local/mysql/my.cnf \
--apply-log --use-memory=4G /backup/2014-06-06_10-27-47
----5.还原数据库
innobackupex --ibbackup=xtrabackup_56 --defaults-file=/usr/local/mysql/my.cnf --copy-back /backup/2014-06-06_10-27-47
还原前数据文件和事务日志文件包括innodb的日志都需要删除.根据/et/my.cnf来确定MySQL的数据位置
---6.权限设置
chown -R mysql:mysql /usr/local/mysql/
service mysql start
*****************************************************************
增量备份和还原
*****************************************************************
----1.准备数据
create database wind;
use wind;
create table t1
(
sid int not null ,
sname varchar(100) not null
)engine=innodb charset=gbk ;
DELIMITER //
create PROCEDURE proc1()
BEGIN
DECLARE i int DEFAULT 0;
set i=1 ;
set autocommit=0;
WHILE i
INSERT INTO t1 values(i,'我');
set i=i+1;
END WHILE;
commit;
set autocommit=1;
END
//
DELIMITER ;
call proc1;
---2.全备数据
mkdir -p /backup/full
innobackupex --user=root --password=password --defaults-file=/usr/local/mysql/my.cnf \
--port=3306 /backup/full
----3.改变数据
create table t2
(
sid int not null ,
sname varchar(100) not null
)engine=innodb charset=gbk ;
DELIMITER //
create PROCEDURE proc2()
BEGIN
DECLARE i int DEFAULT 0;
set i=1 ;
set autocommit=0;
WHILE i
INSERT INTO t2 values(i,'今天是个好日子');
set i=i+1;
END WHILE;
commit;
set autocommit=1;
END
//
DELIMITER ;
call proc2;
----4.增量备份
mkdir -p /backup/incre
innobackupex --use-memory=4G --user=root --password=password --defaults-file=/usr/local/mysql/my.cnf \
--port=3306 --incremental /backup/incre --incremental-basedir=/backup/full/2014-06-06_12-26-10
---3.恢复数据
service mysql stop
mv /usr/local/mysql/data/innodb_data/ /wind/
或
cp -rvf innodb_data/ /wind/
----datadir数据目录和日志目录需要为空
rm -rf /usr/local/mysql/innodb_data/*
rm -rf /usr/local/mysql/data/*
rm -rf /usr/local/mysql/mysql_logs/innodb_log/*
----4.准备日志(默认使用内存100M)
---4.1 Prepare完整备份集
/*语法: innobackupex --apply-log --redo-only BASE-DIR */
innobackupex --ibbackup=xtrabackup_56 --user=root --password=password --defaults-file=/usr/local/mysql/my.cnf \
--apply-log --redo-only /backup/full/2014-06-06_12-26-10 --use-memory=4G
---4.2 Prepare增量备份集
/*语法:innobackupex --apply-log --redo-only BASE-DIR --incremental-dir= */
innobackupex --ibbackup=xtrabackup_56 --user=root --password=password --defaults-file=/usr/local/mysql/my.cnf \
--apply-log --redo-only /backup/full/2014-06-06_12-26-10 --incremental-dir=/backup/incre/2014-06-06_12-38-16 \
--use-memory=4G
---4.3再次prepare全备集,回滚那些未提交的事务
/*语法: innobackupex --apply-log BASE-DIR */
innobackupex --ibbackup=xtrabackup_56 --user=root --password=password --defaults-file=/usr/local/mysql/my.cnf \
--apply-log /backup/full/2014-06-06_12-26-10 --use-memory=4G
----5.还原数据库
innobackupex --ibbackup=xtrabackup_56 --defaults-file=/usr/local/mysql/my.cnf \
--copy-back /backup/full/2014-06-06_12-26-10
还原前数据文件和事务日志文件包括innodb的日志都需要删除.根据/et/my.cnf来确定MySQL的数据位置
---6.权限设置
chown -R mysql:mysql /usr/local/mysql/
---7.启动mysql
service mysql start

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics











PHP Practice: Code Example to Quickly Implement the Fibonacci Sequence The Fibonacci Sequence is a very interesting and common sequence in mathematics. It is defined as follows: the first and second numbers are 0 and 1, and from the third Starting with numbers, each number is the sum of the previous two numbers. The first few numbers in the Fibonacci sequence are 0,1,1.2,3,5,8,13,21,...and so on. In PHP, we can generate the Fibonacci sequence through recursion and iteration. Below we will show these two

Java Development Practice: Integrating Qiniu Cloud Storage Service to Implement File Upload Introduction With the development of cloud computing and cloud storage, more and more applications need to upload files to the cloud for storage and management. The advantages of cloud storage services are high reliability, scalability and flexibility. This article will introduce how to use Java language development, integrate Qiniu cloud storage service, and implement file upload function. About Qiniu Cloud Qiniu Cloud is a leading cloud storage service provider in China, providing comprehensive cloud storage and content distribution services. Users can use Qiniu Yunti

In-depth study of Elasticsearch query syntax and practical introduction: Elasticsearch is an open source search engine based on Lucene. It is mainly used for distributed search and analysis. It is widely used in full-text search of large-scale data, log analysis, recommendation systems and other scenarios. When using Elasticsearch for data query, flexible use of query syntax is the key to improving query efficiency. This article will delve into the Elasticsearch query syntax and give it based on actual cases.

MySQL table design practice: Create an e-commerce order table and product review table. In the database of the e-commerce platform, the order table and product review table are two very important tables. This article will introduce how to use MySQL to design and create these two tables, and give code examples. 1. Design and creation of order table The order table is used to store the user's purchase information, including order number, user ID, product ID, purchase quantity, order status and other fields. First, we need to create a table named "order" using CREATET

Golang dynamic library practice: case sharing and practical skills In Golang (Go language), using dynamic libraries can achieve functions such as modular development, code reuse, and dynamic loading. This article will introduce how to use dynamic libraries in Golang through case sharing and practical tips, and how to use dynamic libraries to improve the flexibility and maintainability of code. What is a dynamic library A dynamic library is a file that contains functions and data that can be loaded at runtime. Unlike static libraries that need to be linked into the application at compile time, dynamic libraries can be

The data export function is a very common requirement in actual development, especially in scenarios such as back-end management systems or data report export. This article will take the Golang language as an example to share the implementation skills of the data export function and give specific code examples. 1. Environment preparation Before starting, make sure you have installed the Golang environment and are familiar with the basic syntax and operations of Golang. In addition, in order to implement the data export function, you may need to use a third-party library, such as github.com/360EntSec

This article brings you relevant knowledge about uniapp cross-domain, and introduces issues related to subcontracting of uniapp and mini programs. Each mini program that uses subcontracting must contain a main package. The so-called main package is where the default startup page/TabBar page is placed, and some public resources/JS scripts are required for all sub-packages; while sub-packages are divided according to the developer's configuration. I hope it will be helpful to everyone.

Vue Practical Combat: Date Picker Component Development Introduction: The date picker is a component often used in daily development. It can easily select dates and provides various configuration options. This article will introduce how to use the Vue framework to develop a simple date picker component and provide specific code examples. 1. Requirements analysis Before starting development, we need to conduct a requirements analysis to clarify the functions and characteristics of the components. According to the common date picker component functions, we need to implement the following function points: Basic functions: able to select dates, and
