您当前的位置: 首页 > 学无止境 > 心得笔记 网站首页心得笔记
马哥linux运维学习笔记-MySQL系列之十六——使用xtrabackup进行数据库备份
发布时间:2019-03-19 21:45:13编辑:雪饮阅读()
要使用xtrabackup进行数据库备份,则需要在你的redhat上先安装'percona-xtrabackup-2.0.0-417.rhel5.i386.rpm'
完整备份数据库
[root@localhost ~]# innobackupex --user=root /backup
然后准备该备份(其实就是将事务中没有提交完成的就提交完成,需要回滚的就回滚)
[root@localhost ~]# innobackupex --apply-log /backup/2019-03-20_04-41-57/
即时点/增量备份
然后在完整备份数据库后在数据库中再插入一些数据并滚动一次日志,然后将日志滚动前所用的二进制日志备份
注意:日志文件滚动则是将可能影响数据库记录改变的操作都保存到当前所用日志文件中并产生一个新的日志文件用于滚动后记录新的日志
mysql> show master status;
+------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000002 | 107 | | |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)
mysql> insert into test values(6,'gl5');
Query OK, 1 row affected (0.01 sec)
mysql> flush logs;
Query OK, 0 rows affected (0.01 sec)
mysql> show master status;
+------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000003 | 107 | | |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)
[root@localhost ~]# cp /mydata/data/mysql-bin.000002 /root/
模拟数据库损坏
[root@localhost ~]# service mysqld stop
Shutting down MySQL. [ OK ]
[root@localhost ~]# rm -rf /mydata/data/*
恢复完整备份
[root@localhost ~]# innobackupex --copy-back /backup/2019-03-20_04-41-57/
恢复增量备份(即时点)
[root@localhost ~]# mysqlbinlog /root/mysql-bin.000002 > /tmp/abc.sql
[root@localhost ~]# chown -R mysql:mysql /mydata/data
[root@localhost ~]# service mysqld start
Starting MySQL.. [ OK ]
[root@localhost ~]# mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.5.28-log Source distribution
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> set sql_log_bin=0;
Query OK, 0 rows affected (0.00 sec)
mysql> source /tmp/abc.sql;
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Charset changed
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Database changed
Query OK, 0 rows affected (0.00 sec)
Query OK, 1 row affected (0.01 sec)
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
mysql> set sql_log_bin=1;
Query OK, 0 rows affected (0.00 sec)
关键字词:linux,mysql,xtrabackup,备份
相关文章
- 马哥linux运维学习笔记-MySQL系列之十五——使用LVM快
- 马哥linux运维学习笔记-MySQL系列之十四——MySQL备份
- 马哥linux运维学习笔记-MySQL系列之十二——MySQL日志
- 马哥linux运维学习笔记-MySQL系列之九——MySQL事务和
- 马哥linux运维学习笔记-MySQL系列之八——多表查询、
- 马哥linux运维学习笔记-MySQL系列之七——单表查询、
- 马哥linux运维学习笔记-MySQL系列之六——MySQL管理表
- 马哥linux运维学习笔记-MySQL系列之五——MySQL数据类
- 马哥linux运维学习笔记-mysql系列之四mysql客户端工具
- 马哥linux运维学习笔记-mysql系列之三MySQL数据库基础