1.centos7 安装(centos6 去官方下载相应版本即可)
wget https://www.percona.com/downloads/XtraBackup/Percona-XtraBackup-2.4.7/binary/redhat/7/x86_64/percona-xtrabackup-24-2.4.7-2.el7.x86_64.rpm yum localinstall percona-xtrabackup-24-2.4.7-2.el7.x86_64.rpm
2.使用备份(全备份)
innobackupex --user=root --password=123456 /home/backupdb/[root@master 2017-07-17_01-55-14]# pwd/home/backupdb/2017-07-17_01-55-14[root@master 2017-07-17_01-55-14]# lltotal 18456-rw-r----- 1 root root 417 Jul 17 01:55 backup-my.cnf-rw-r----- 1 root root 18874368 Jul 17 01:55 ibdata1drwxr-x--- 2 root root 4096 Jul 17 01:55 mysqldrwxr-x--- 2 root root 4096 Jul 17 01:55 performance_schemadrwxr-x--- 2 root root 19 Jul 17 01:55 test-rw-r----- 1 root root 113 Jul 17 01:55 xtrabackup_checkpoints-rw-r----- 1 root root 432 Jul 17 01:55 xtrabackup_info-rw-r----- 1 root root 2560 Jul 17 01:55 xtrabackup_logfile[root@master 2017-07-17_01-55-14]# 生成备份日志 innobackupex --user=root --password=123456 --apply-log /home/backupdb/2017-07-17_01-52-14 [root@master 2017-07-17_01-55-14]# lltotal 49172-rw-r----- 1 root root 417 Jul 17 01:55 backup-my.cnf-rw-r----- 1 root root 18874368 Jul 17 01:56 ibdata1-rw-r----- 1 root root 5242880 Jul 17 01:56 ib_logfile0-rw-r----- 1 root root 5242880 Jul 17 01:56 ib_logfile1-rw-r----- 1 root root 12582912 Jul 17 01:56 ibtmp1drwxr-x--- 2 root root 4096 Jul 17 01:55 mysqldrwxr-x--- 2 root root 4096 Jul 17 01:55 performance_schemadrwxr-x--- 2 root root 19 Jul 17 01:55 test-rw-r----- 1 root root 113 Jul 17 01:56 xtrabackup_checkpoints-rw-r----- 1 root root 432 Jul 17 01:55 xtrabackup_info-rw-r----- 1 root root 8388608 Jul 17 01:56 xtrabackup_logfile
3.还原(全部还原)
[root@master 2017-07-17_01-55-14]# ps -ef |grep mysql mysql 2434 1 0 01:47 ? 00:00:00 /bin/sh /usr/bin/mysqld_safe --basedir=/usr mysql 2591 2434 0 01:47 ? 00:00:00 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --log-error=/var/log/mariadb/mariadb.log --pid-file=/var/run/mariadb/mariadb.pid --socket=/var/lib/mysql/mysql.sock root 2879 2126 0 01:57 pts/0 00:00:00 grep --color=auto mysql [root@master 2017-07-17_01-55-14]# cd /var/lib/mysql/ [root@master mysql]# ls aria_log.00000001 aria_log_control ibdata1 ib_logfile0 ib_logfile1 mysql mysql.sock performance_schema test [root@master mysql]# ll total 28700 -rw-rw---- 1 mysql mysql 16384 Jul 17 01:47 aria_log.00000001 -rw-rw---- 1 mysql mysql 52 Jul 17 01:47 aria_log_control -rw-rw---- 1 mysql mysql 18874368 Jul 17 01:47 ibdata1 -rw-rw---- 1 mysql mysql 5242880 Jul 17 01:47 ib_logfile0 -rw-rw---- 1 mysql mysql 5242880 Jul 17 01:47 ib_logfile1 drwx------ 2 mysql mysql 4096 Jul 17 01:47 mysql srwxrwxrwx 1 mysql mysql 0 Jul 17 01:47 mysql.sock drwx------ 2 mysql mysql 4096 Jul 17 01:47 performance_schema drwx------ 2 mysql mysql 6 Jul 17 01:47 test [root@master mysql]# rm -rf test [root@master mysql]# [root@master mysql]# systemctl stop mariadb [root@master mysql]# rm -rf /var/lib/mysql/* 还原并启动数据库 innobackupex --defaults-file=/etc/my.cnf --copy-back /home/backupdb/2017-07-17_01-55-14/ 默认还原过来的数据是root权限 数据库启动不起来 chown -R mysql.mysql /var/lib/mysql [root@master mysql]# systemctl start mariadb [root@master mysql]# mysql -uroot -p123456 Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 2 Server version: 5.5.52-MariaDB MariaDB Server Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> MariaDB [(none)]> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | test | +--------------------+ 4 rows in set (0.00 sec) MariaDB [(none)]> 数据全部回来
4.增量备份
mkdir -p /home/backupdb/{1,2,3} [root@master backupdb]# innobackupex --defaults-file=/etc/my.cnf --user=root --password=123456 /home/backupdb/1/ 如果数据库有改动可以增量备份 innobackupex --defaults-file=/etc/my.cnf --incremental /home/backupdb/2/ --incremental-basedir=/home/backupdb/1/2017-07-17_02-16-32/ --user=root --password=123456 --incremental 增量备份到那个目录 --incremental-basedir 基于哪个目录进行增量备份 假如数据库再次修改 innobackupex --defaults-file=/etc/my.cnf --incremental /home/backupdb/3/ --incremental-basedir=/home/backupdb/2/2017-07-17_02-19-47/ --user=root --password=123456
5.增量备份的数据恢复
先恢复第一次全被的数据
innobackupex --defaults-file=/etc/my.cnf --copy-back /home/backupdb/1/2017-07-17_02-16-32/
2.增量恢复
innobackupex --apply-log --redo-only /home/backupdb/1/2017-07-17_02-16-32/ innobackupex --apply-log --redo-only /home/backupdb/1/2017-07-17_02-16-32/ --incremental-dir=/home/backupdb/2/2017-07-17_02-19-47/ innobackupex --apply-log --redo-only /home/backupdb/1/2017-07-17_02-16-32/ --incremental-dir=/home/backupdb/3/2017-07-17_02-23-41/
3.恢复数据
innobackupex --copy-back /home/backupdb/1/2017-07-17_02-16-32/
4.可以看出数据已经回来
[root@master mysql]# ll /var/lib/mysql/ total 18444 -rw-r----- 1 root root 18874368 Jul 17 02:41 ibdata1 drwxr-x--- 2 root root 4096 Jul 17 02:41 mysql drwxr-x--- 2 root root 4096 Jul 17 02:41 performance_schema drwxr-x--- 2 root root 19 Jul 17 02:41 test drwxr-x--- 2 root root 19 Jul 17 02:41 test02 -rw-r----- 1 root root 542 Jul 17 02:41 xtrabackup_info [root@master mysql]# chown -R mysql.mysql * [root@master mysql]#
5.启动数据库
[root@master lib]# systemctl start mariadb [root@master lib]# mysql -uroot -p123456 Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 2 Server version: 5.5.52-MariaDB MariaDB Server Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | test | | test02 | +--------------------+ 5 rows in set (0.00 sec) MariaDB [(none)]>
extrabackup备份的时候 备份mysql的时候安装不兼容 这次
我是备份的mariadb
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。