MariaDB [(none)]> select * from testdb.students; +----+------------+------+--------+ | id | name | age | gender | +----+------------+------+--------+ | 1 | zhangsan | 15 | f | | 2 | lisi | 15 | m | | 3 | wanger | 25 | m | | 4 | liuwu | 24 | f | | 5 | wangermazi | 28 | f | +----+------------+------+--------+ 5 rows in set (0.00 sec)
[root@jenkins ~]# innobackupex --user=lxk --host=localhost --password=lxkpass /tmp 180916 11:56:18 innobackupex: Starting the backup operation IMPORTANT: Please check that the backup run completes successfully. At the end of a successful backup run innobackupex prints "completed OK!". ...... 中間省略 ...... 180916 11:56:22 Executing UNLOCK TABLES 180916 11:56:22 All tables unlocked 180916 11:56:22 Backup created in directory '/tmp/2018-09-16_11-56-18' 180916 11:56:22 [00] Writing backup-my.cnf 180916 11:56:22 [00] ...done 180916 11:56:22 [00] Writing xtrabackup_info 180916 11:56:22 [00] ...done xtrabackup: Transaction log of lsn (1602080) to (1602080) was copied. 180916 11:56:23 completed OK! [root@jenkins ~]# cat /tmp/2018-09-16_11-56-18/xtrabackup_checkpoints backup_type = full-backuped #備份類型:全量備份 from_lsn = 0 #起始lsn to_lsn = 1602080 #結束lsn last_lsn = 1602080 #總共多少個lsn compact = 0 recover_binlog_info = 0 [root@jenkins ~]# cat /tmp/2018-09-16_11-56-18/xtrabackup_info uuid = 7a05430c-b964-11e8-889e-000c29080758 name = tool_name = innobackupex #備份工具名稱 tool_command = --user=lxk --host=localhost --password=... /tmp #備份時使用的命令 tool_version = 2.3.6 #工具版本 ibbackup_version = 2.3.6 server_version = 5.5.60-MariaDB start_time = 2018-09-16 11:56:18 #備份開始時間 end_time = 2018-09-16 11:56:22 #備份結束時間 lock_time = 0 binlog_pos = innodb_from_lsn = 0 innodb_to_lsn = 1602080 partial = N incremental = N format = file compact = N compressed = N #是否啓用壓縮 encrypted = N #是否加密
[root@jenkins ~]# innobackupex --apply-log /tmp/2018-09-16_11-56-18/ 180916 12:06:16 innobackupex: Starting the apply-log operation IMPORTANT: Please check that the apply-log run completes successfully. At the end of a successful apply-log run innobackupex prints "completed OK!". ...... 中間省略 ...... xtrabackup: starting shutdown with innodb_fast_shutdown = 1 InnoDB: FTS optimize thread exiting. InnoDB: Starting shutdown... InnoDB: Shutdown completed; log sequence number 1602582 180916 12:06:19 completed OK! #此處顯示completed OK即表示完成
[root@jenkins ~]# rm -rf /var/lib/mysql/*
[root@jenkins ~]# innobackupex --copy-back /tmp/2018-09-16_11-56-18/ 180916 12:11:19 innobackupex: Starting the copy-back operation IMPORTANT: Please check that the copy-back run completes successfully. At the end of a successful copy-back run innobackupex prints "completed OK!". innobackupex version 2.3.6 based on MySQL server 5.6.24 Linux (x86_64) (revision id: ) 180916 12:11:19 [01] Copying ib_logfile0 to /var/lib/mysql/ib_logfile0 180916 12:11:19 [01] ...done ..... 中間省略 ..... 180916 12:11:20 [01] ...done 180916 12:11:20 [01] Copying ./xtrabackup_info to /var/lib/mysql/xtrabackup_info 180916 12:11:20 [01] ...done 180916 12:11:20 [01] Copying ./test/db.opt to /var/lib/mysql/test/db.opt 180916 12:11:20 [01] ...done 180916 12:11:20 completed OK! #顯示completed OK即爲完成
[root@jenkins ~]# ls /var/lib/mysql -l total 28692 -rw-r----- 1 root root 18874368 Sep 16 12:11 ibdata1 -rw-r----- 1 root root 5242880 Sep 16 12:11 ib_logfile0 -rw-r----- 1 root root 5242880 Sep 16 12:11 ib_logfile1 drwx------ 2 root root 4096 Sep 16 12:11 mysql drwx------ 2 root root 4096 Sep 16 12:11 performance_schema drwx------ 2 root root 4096 Sep 16 12:11 test drwx------ 2 root root 4096 Sep 16 12:11 testdb -rw-r----- 1 root root 437 Sep 16 12:11 xtrabackup_info [root@jenkins ~]# chown -R mysql.mysql /var/lib/mysql/* [root@jenkins ~]# ll /var/lib/mysql/ total 28692 -rw-r----- 1 mysql mysql 18874368 Sep 16 12:11 ibdata1 -rw-r----- 1 mysql mysql 5242880 Sep 16 12:11 ib_logfile0 -rw-r----- 1 mysql mysql 5242880 Sep 16 12:11 ib_logfile1 drwx------ 2 mysql mysql 4096 Sep 16 12:11 mysql drwx------ 2 mysql mysql 4096 Sep 16 12:11 performance_schema drwx------ 2 mysql mysql 4096 Sep 16 12:11 test drwx------ 2 mysql mysql 4096 Sep 16 12:11 testdb -rw-r----- 1 mysql mysql 437 Sep 16 12:11 xtrabackup_info
[root@jenkins ~]# systemctl start mariadb [root@jenkins ~]# mysql Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 2 Server version: 5.5.60-MariaDB MariaDB Server Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> select * from testdb.students; +----+------------+------+--------+ | id | name | age | gender | +----+------------+------+--------+ | 1 | zhangsan | 15 | f | | 2 | lisi | 15 | m | | 3 | wanger | 25 | m | | 4 | liuwu | 24 | f | | 5 | wangermazi | 28 | f | +----+------------+------+--------+ 5 rows in set (0.00 sec)
[root@jenkins ~]# innobackupex --user=lxk --host=localhost --password=lxkpass /tmp/ 180916 12:17:01 innobackupex: Starting the backup operation IMPORTANT: Please check that the backup run completes successfully. At the end of a successful backup run innobackupex prints "completed OK!". ..... 中間省略 ..... 180916 12:17:03 Executing UNLOCK TABLES 180916 12:17:03 All tables unlocked 180916 12:17:03 Backup created in directory '/tmp//2018-09-16_12-17-01' 180916 12:17:03 [00] Writing backup-my.cnf 180916 12:17:03 [00] ...done 180916 12:17:03 [00] Writing xtrabackup_info 180916 12:17:03 [00] ...done xtrabackup: Transaction log of lsn (1602592) to (1602592) was copied. 180916 12:17:03 completed OK!
MariaDB [testdb]> insert into students values (6,'xiaoming',20,'f'); Query OK, 1 row affected (0.00 sec) MariaDB [testdb]> select * from students; +----+------------+------+--------+ | id | name | age | gender | +----+------------+------+--------+ | 1 | zhangsan | 15 | f | | 2 | lisi | 15 | m | | 3 | wanger | 25 | m | | 4 | liuwu | 24 | f | | 5 | wangermazi | 28 | f | | 6 | xiaoming | 20 | f | +----+------------+------+--------+ 6 rows in set (0.00 sec)
[root@jenkins ~]# innobackupex --incremental /tmp --incremental-basedir=/tmp/2018-09-16_12-17-01/ 180916 12:23:28 innobackupex: Starting the backup operation IMPORTANT: Please check that the backup run completes successfully. At the end of a successful backup run innobackupex prints "completed OK!". ..... 中間省略 ..... 180916 12:23:30 [00] ...done xtrabackup: Transaction log of lsn (1602735) to (1602735) was copied. 180916 12:23:30 completed OK!
MariaDB [testdb]> insert into students values (8,'daming',20,'m'); Query OK, 1 row affected (0.00 sec)
[root@jenkins ~]# innobackupex --incremental /tmp --incremental-basedir=/tmp/2018-09-16_12-23-28/ 180916 12:29:08 innobackupex: Starting the backup operation IMPORTANT: Please check that the backup run completes successfully. At the end of a successful backup run innobackupex prints "completed OK!". ..... 中間省略 ..... 180916 12:29:10 [00] Writing xtrabackup_info 180916 12:29:10 [00] ...done xtrabackup: Transaction log of lsn (1603615) to (1603615) was copied. 180916 12:29:10 completed OK!
(1) 準備全量備份文件mysql
[root@jenkins tmp]# innobackupex --apply-log --redo-only 2018-09-16_12-17-01 180916 12:34:06 innobackupex: Starting the apply-log operation IMPORTANT: Please check that the apply-log run completes successfully. At the end of a successful apply-log run innobackupex prints "completed OK!". ..... 中間省略 ..... InnoDB: Starting shutdown... InnoDB: Shutdown completed; log sequence number 1602592 180916 12:34:06 completed OK!
(2) 準備第一次增量備份文件:sql
注: --incremental-dir所指的目錄必須爲絕對路徑數據庫
[root@jenkins 2018-09-16_12-17-01]# innobackupex --apply-log --redo-only ./ --incremental-dir=/tmp/2018-09-16_12-23-28 180916 12:38:17 innobackupex: Starting the apply-log operation IMPORTANT: Please check that the apply-log run completes successfully. At the end of a successful apply-log run innobackupex prints "completed OK!". ..... 中間省略 ..... 180916 12:38:18 [00] Copying /tmp/2018-09-16_12-23-28/xtrabackup_info to ./xtrabackup_info 180916 12:38:18 [00] ...done 180916 12:38:18 completed OK!
(3) 準備第二次增量備份文件:app
[root@jenkins 2018-09-16_12-17-01]# innobackupex --apply-log --redo-only ./ --incremental-dir=/tmp/2018-09-16_12-29-08/ 180916 12:42:56 innobackupex: Starting the apply-log operation IMPORTANT: Please check that the apply-log run completes successfully. At the end of a successful apply-log run innobackupex prints "completed OK!". ..... 中間省略 ..... 180916 12:42:57 [01] ...done 180916 12:42:57 [00] Copying /tmp/2018-09-16_12-29-08//xtrabackup_info to ./xtrabackup_info 180916 12:42:57 [00] ...done 180916 12:42:57 completed OK!
(4) 執行回滾操做ide
[root@jenkins tmp]# innobackupex --apply-log /tmp/2018-09-16_12-17-01 180916 12:46:15 innobackupex: Starting the apply-log operation IMPORTANT: Please check that the apply-log run completes successfully. At the end of a successful apply-log run innobackupex prints "completed OK!". ..... 中間省略 ..... xtrabackup: starting shutdown with innodb_fast_shutdown = 1 InnoDB: FTS optimize thread exiting. InnoDB: Starting shutdown... InnoDB: Shutdown completed; log sequence number 1604128 180916 12:46:18 completed OK!
(5) 關閉MySQL並刪除/var/lib/mysql/下全部文件工具
(6) 恢復數據:ui
[root@jenkins tmp]# innobackupex --copy-back 2018-09-16_12-17-01/ 180916 12:48:39 innobackupex: Starting the copy-back operation IMPORTANT: Please check that the copy-back run completes successfully. At the end of a successful copy-back run innobackupex prints "completed OK!". ..... 中間省略 ..... 180916 12:48:40 [01] Copying ./test/db.opt to /var/lib/mysql/test/db.opt 180916 12:48:40 [01] ...done 180916 12:48:40 completed OK!
(6) 修改/var/lib/mysql/下文件的屬主、屬組並啓動數據庫並查看加密
[root@jenkins mysql]# chown -R mysql.mysql /var/lib/mysql/* [root@jenkins mysql]# ll total 28692 -rw-r----- 1 mysql mysql 18874368 Sep 16 12:48 ibdata1 -rw-r----- 1 mysql mysql 5242880 Sep 16 12:48 ib_logfile0 -rw-r----- 1 mysql mysql 5242880 Sep 16 12:48 ib_logfile1 drwx------ 2 mysql mysql 4096 Sep 16 12:48 mysql drwx------ 2 mysql mysql 4096 Sep 16 12:48 performance_schema drwx------ 2 mysql mysql 4096 Sep 16 12:48 test drwx------ 2 mysql mysql 4096 Sep 16 12:48 testdb -rw-r----- 1 mysql mysql 462 Sep 16 12:48 xtrabackup_info [root@jenkins mysql]# systemctl start mariadb [root@jenkins mysql]# mysql Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 2 Server version: 5.5.60-MariaDB MariaDB Server Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> select * from testdb.students; +----+------------+------+--------+ | id | name | age | gender | +----+------------+------+--------+ | 1 | zhangsan | 15 | f | | 2 | lisi | 15 | m | | 3 | wanger | 25 | m | | 4 | liuwu | 24 | f | | 5 | wangermazi | 28 | f | | 6 | xiaoming | 20 | f | | 8 | daming | 20 | m | +----+------------+------+--------+ 7 rows in set (0.00 sec)