利用binlog server及Xtrabackup备份集来恢复误删表(drop)
| Hostname | IP/Port | Identity | OS Version | MySQL Version | GTID Mode | Binlog Format |
| zlm1 | 192.168.56.100/3306 | master | CentOS 7.0 | 5.7.21 | on | row |
| zlm2 | 192.168.56.101/3306 | slave | CentOS 7.0 | 5.7.21 | on | row |
| zlm3 | 192.168.56.102/3306 | binlog server | CentOS 7.0 | 5.7.21 | on | row |
zlm@192.168.56.100: [sysbench]>show master status;
+------------------+----------+--------------+------------------+-------------------------------------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------------------------------------+
| mysql-bin. | | | | 2a4b3562-2ab6-11e8-be7a-080027de0e0e:- |
+------------------+----------+--------------+------------------+-------------------------------------------------+
row in set (0.00 sec)
[root@zlm3 :: /data]
#mysqlbinlog -R --raw -h192.168.56. -urepl -prepl4slave -P3306 --stop-never mysql-bin. &
[]
mysqlbinlog: [Warning] Using a password on the command line interface can be insecure. [root@zlm3 :: /data]
#ls -l
total
drwxr-xr-x mysql mysql Jun : backup
drwxr-xr-x mysql mysql Mar : mysql
-rw-r----- root root Jul : mysql-bin.
zlm@192.168.56.100: [sysbench]>flush logs;
Query OK, rows affected (0.06 sec) zlm@192.168.56.100: [sysbench]>flush logs;
Query OK, rows affected (0.01 sec) zlm@192.168.56.100: [sysbench]>show master status;
+------------------+----------+--------------+------------------+-------------------------------------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------------------------------------+
| mysql-bin. | | | | 2a4b3562-2ab6-11e8-be7a-080027de0e0e:- |
+------------------+----------+--------------+------------------+-------------------------------------------------+
row in set (0.00 sec)
[root@zlm3 :: /data]
#ls -l
total
drwxr-xr-x mysql mysql Jun : backup
drwxr-xr-x mysql mysql Mar : mysql
-rw-r----- root root Jul : mysql-bin.
-rw-r----- root root Jul : mysql-bin.
-rw-r----- root root Jul : mysql-bin.
zlm@192.168.56.100: [sysbench]>show tables;
+--------------------+
| Tables_in_sysbench |
+--------------------+
| sbtest1 |
| sbtest2 |
| sbtest3 |
| sbtest4 |
| sbtest5 |
| sbtest6 |
+--------------------+
rows in set (0.00 sec) zlm@192.168.56.100: [sysbench]>select count(*) from sbtest6;
+----------+
| count(*) |
+----------+
| |
+----------+
row in set (0.00 sec) zlm@192.168.56.100: [sysbench]>insert into sbtest6 values(,,'a','b');
Query OK, row affected (0.00 sec) zlm@192.168.56.100: [sysbench]>select * from sbtest6;
+----+---+---+-----+
| id | k | c | pad |
+----+---+---+-----+
| | | a | b |
+----+---+---+-----+
row in set (0.00 sec)
[root@zlm1 :: ~]
#innobackupex --defaults-file=/data/mysql/mysql3306/my3306.cnf -uroot -pPassw0rd /data/backup
:: innobackupex: Error: extra argument found -pPassw0rd
:: innobackupex: Error: extra argument found /data/backup [root@zlm1 :: ~]
#innobackupex -v
innobackupex version 2.4. Linux (x86_64) (revision id: df58cf2) [root@zlm1 :: ~]
#innobackupex --defaults-file=/data/mysql/mysql3306/my3306.cnf --user=root --password=Passw0rd /data/backup
:: innobackupex: Starting the backup operation
... :: Backup created in directory '/data/backup/2018-07-29_16-32-33'
MySQL binlog position: filename 'mysql-bin.000100', position '', GTID of the last change '2a4b3562-2ab6-11e8-be7a-080027de0e0e:1-12715694'
:: [] Writing backup-my.cnf
:: [] ...done
:: [] Writing xtrabackup_info
:: [] ...done
xtrabackup: Transaction log of lsn () to () was copied.
:: completed OK!
zlm@192.168.56.100: [sysbench]>insert into sbtest6 values(,,'c','d');
Query OK, row affected (0.00 sec) zlm@192.168.56.100: [sysbench]>show master status;
+------------------+----------+--------------+------------------+-------------------------------------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------------------------------------+
| mysql-bin. | | | | 2a4b3562-2ab6-11e8-be7a-080027de0e0e:- |
+------------------+----------+--------------+------------------+-------------------------------------------------+
row in set (0.00 sec) zlm@192.168.56.100: [sysbench]>drop tables sbtest6;
Query OK, rows affected (0.02 sec) zlm@192.168.56.100: [sysbench]>show master status;
+------------------+----------+--------------+------------------+-------------------------------------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------------------------------------+
| mysql-bin. | | | | 2a4b3562-2ab6-11e8-be7a-080027de0e0e:- |
+------------------+----------+--------------+------------------+-------------------------------------------------+
row in set (0.00 sec)
[root@zlm1 :: /data/backup]
#mysqladmin shutdown [root@zlm1 :: /data/backup]
#ps aux|grep mysqld
mysql 0.0 20.7 pts/ Sl : : mysqld --defaults-file=/data/mysql/mysql3306/my3306.cnf
root 0.0 0.0 pts/ R+ : : grep --color=auto mysqld [root@zlm1 :: /data/backup]
#ps aux|grep mysqld
mysql 0.0 20.1 pts/ Sl : : mysqld --defaults-file=/data/mysql/mysql3306/my3306.cnf
root 0.0 0.0 pts/ R+ : : grep --color=auto mysqld [root@zlm1 :: /data/backup]
#mysqladmin shutdown
mysqladmin: connect to server at '192.168.56.100' failed
error: 'Can't connect to MySQL server on '192.168.56.100' ()'
Check that mysqld is running on 192.168.56.100 and that the port is .
You can check this by doing 'telnet 192.168.56.100 3306' [root@zlm1 :: /data/backup]
#ps aux|grep mysqld
root 0.0 0.0 pts/ R+ : : grep --color=auto mysqld
[root@zlm1 :: ~]
#cd /data/backup/ [root@zlm1 :: /data/backup]
#ls -l
total
drwxr-x--- root root Jul : --29_16-- [root@zlm1 :: /data/backup]
#scp -r --29_16-- zlm2:/data/backup
xtrabackup_logfile % .5KB/s :
ibdata1 % 100MB .0MB/s :
... //Omitted.
[root@zlm2 :: /data/backup]
#ls -l
total
drwxr-x--- root root Jul : --29_16-- [root@zlm2 :: /data/backup]
#innobackupex -v
xtrabackup: recognized server arguments: --datadir=/var/lib/mysql
innobackupex version 2.4. Linux (x86_64) (revision id: 170eb8c) [root@zlm2 :: /data/backup]
#innobackupex --defaults-file=/data/mysql/mysql3306/my3306.cnf -uroot -pPassw0rd --apply-log /data/backup/--29_16--/
... //Omitted. xtrabackup: starting shutdown with innodb_fast_shutdown =
InnoDB: page_cleaner: 1000ms intended loop took 8812ms. The settings might not be optimal. (flushed= and evicted=, during the time.)
InnoDB: FTS optimize thread exiting.
InnoDB: Starting shutdown...
InnoDB: Shutdown completed; log sequence number
:: completed OK!
[root@zlm2 :: /data/backup]
#ps aux|grep mysqld
mysql 0.0 18.7 pts/ Sl : : mysqld --defaults-file=/data/mysql/mysql3306/my3306.cnf
root 0.0 0.0 pts/ R+ : : grep --color=auto mysqld [root@zlm2 :: /data/backup]
#mysqladmin shutdown [root@zlm2 :: /data/backup]
#ps aux|grep mysqld
root 0.0 0.0 pts/ R+ : : grep --color=auto mysqld [root@zlm2 :: /data/backup]
#cd /data/mysql/mysql3306/data/ [root@zlm2 :: /data/mysql/mysql3306/data]
#rm -rf * [root@zlm2 :: /data/mysql/mysql3306/data]
#cd ../logs [root@zlm2 :: /data/mysql/mysql3306/logs]
#rm -rf * [root@zlm2 :: /data/mysql/mysql3306/logs]
#innobackupex --defaults-file=/data/mysql/mysql3306/my3306.cnf -uroot -pPassw0rd --copy-back /data/backup/--29_16--/
... //Omitted.
[root@zlm2 :: /data/mysql/mysql3306/logs]
#cd ../data [root@zlm2 :: /data/mysql/mysql3306/data]
#chown -R mysql.mysql * [root@zlm2 :: /data/mysql/mysql3306/data]
#sh /root/mysqld.sh [root@zlm2 :: /data/mysql/mysql3306/data]
#ps aux|grep mysqld
mysql 3.2 17.9 pts/ Sl : : mysqld --defaults-file=/data/mysql/mysql3306/my3306.cnf
root 0.0 0.0 pts/ R+ : : grep --color=auto mysqld [root@zlm2 :: /data/mysql/mysql3306/data]
#mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is
Server version: 5.7.-log MySQL Community Server (GPL) Copyright (c) , , Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. zlm@192.168.56.101: [(none)]>use sysbench
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A Database changed
zlm@192.168.56.101: [sysbench]>show tables;
+--------------------+
| Tables_in_sysbench |
+--------------------+
| sbtest1 |
| sbtest2 |
| sbtest3 |
| sbtest4 |
| sbtest5 |
| sbtest6 |
+--------------------+
rows in set (0.00 sec) zlm@192.168.56.101: [sysbench]>select * from sbtest6;
+----+---+---+-----+
| id | k | c | pad |
+----+---+---+-----+
| | | a | b |
+----+---+---+-----+
row in set (0.00 sec)
[root@zlm3 :: /data/mysql/mysql3306/logs]
#ps aux|grep mysqld
root 0.0 0.0 pts/ R+ : : grep --color=auto mysqld [root@zlm3 :: /data/mysql/mysql3306/logs]
#sh /root/mysqld.sh [root@zlm3 :: /data/mysql/mysql3306/logs]
#ps aux|grep mysqld
mysql 16.5 15.6 pts/ Rl : : mysqld --defaults-file=/data/mysql/mysql3306/my3306.cnf
root 0.0 0.0 pts/ R+ : : grep --color=auto mysqld [root@zlm3 :: /data/mysql/mysql3306/logs]
#ls -l
total
-rw-r----- root root Jul : mysql-bin.
-rw-r----- root root Jul : mysql-bin.
-rw-r----- root root Jul : mysql-bin.
-rw-r----- mysql mysql Jul : mysql-bin.
-rw-r----- mysql mysql Jul : mysql-bin.index [root@zlm3 :: /data/mysql/mysql3306/logs]
#cat mysql-bin.index
/data/mysql/mysql3306/logs/mysql-bin.
[root@zlm3 :: /data/mysql/mysql3306/logs]
#rm -f mysql-bin.*
[]+ Done mysqlbinlog -R --raw -h192.168.56. -urepl -prepl4slave -P3306 --stop-never mysql-bin. (wd: /data)
(wd now: /data/mysql/mysql3306/logs) [root@zlm3 :: /data/mysql/mysql3306/logs]
#ls -l
total
-rw-r----- mysql mysql Jul : mysql-bin.index [root@zlm3 :: /data/mysql/mysql3306/logs]
#ps aux|grep mysqlbinlog
root 0.0 0.0 pts/ R+ : : grep --color=auto mysqlbinlog [root@zlm3 :: /data/mysql/mysql3306/logs]
#cp /data/mysql-bin* . [root@zlm3 :: /data/mysql/mysql3306/logs]
#ls -l
-rw-r----- root root Jul : mysql-bin.
-rw-r----- root root Jul : mysql-bin.
-rw-r----- root root Jul : mysql-bin.
-rw-r----- root root Jul : mysql-bin.index [root@zlm3 :: /data/mysql/mysql3306/logs]
#ls - | awk '{print i$0}' i=`pwd`'/'|grep mysql-bin. > mysql-bin.index [root@zlm3 :: /data/mysql/mysql3306/logs]
#cat mysql-bin.index
/data/mysql/mysql3306/logs/mysql-bin.
/data/mysql/mysql3306/logs/mysql-bin.
/data/mysql/mysql3306/logs/mysql-bin. [root@zlm3 :: /data/mysql/mysql3306/logs]
#chown mysql.mysql * [root@zlm3 :: /data/mysql/mysql3306/logs]
#ls -l
total
-rw-r----- mysql mysql Jul : mysql-bin.
-rw-r----- mysql mysql Jul : mysql-bin.
-rw-r----- mysql mysql Jul : mysql-bin.
-rw-r----- mysql mysql Jul : mysql-bin.index
[root@zlm3 :: /data/mysql/mysql3306]
#cd ../data [root@zlm3 :: /data/mysql/mysql3306/data]
#cat auto.cnf
[auto]
server-uuid=e00ef9f5-6c4b-11e8--080027de0e0e [root@zlm3 :: /data/mysql/mysql3306/data]
#vim auto.cnf [root@zlm3 :: /data/mysql/mysql3306/data]
#cat auto.cnf
[auto]
server-uuid=2a4b3562-2ab6-11e8-be7a-080027de0e0e
zlm@192.168.56.101: [sysbench]>change master to \
-> master_host='192.168.56.102',\
-> master_port=,\
-> master_user='repl',\
-> master_password='repl4slave',\
-> master_auto_position=;
Query OK, rows affected, warnings (0.01 sec)
[root@zlm2 :: /data/backup/--29_16--]
#cat xtrabackup_binlog_info
mysql-bin. 2a4b3562-2ab6-11e8-be7a-080027de0e0e:- zlm@192.168.56.101: [sysbench]>reset master;
Query OK, rows affected (0.00 sec) zlm@192.168.56.101: [sysbench]>set @@global.gtid_purged='2a4b3562-2ab6-11e8-be7a-080027de0e0e:1-12715694';
Query OK, rows affected (0.00 sec) zlm@192.168.56.101: [sysbench]>start slave io_thread;
Query OK, rows affected (0.00 sec) zlm@192.168.56.101: [sysbench]>show slave status\G
*************************** . row ***************************
Slave_IO_State:
Master_Host: 192.168.56.102
Master_User: repl
Master_Port:
Connect_Retry:
Master_Log_File:
Read_Master_Log_Pos:
Relay_Log_File: relay-bin.
Relay_Log_Pos:
Relay_Master_Log_File:
Slave_IO_Running: No
Slave_SQL_Running: No
Replicate_Do_DB:
Replicate_Ignore_DB:
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno:
Last_Error:
Skip_Counter:
Exec_Master_Log_Pos:
Relay_Log_Space:
Until_Condition: None
Until_Log_File:
Until_Log_Pos:
Master_SSL_Allowed: No
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master: NULL
Master_SSL_Verify_Server_Cert: No
Last_IO_Errno:
Last_IO_Error: Got fatal error from master when reading data from binary log: 'The slave is connecting using CHANGE MASTER TO MASTER_AUTO_POSITION = 1, but the master has purged binary logs containing GTIDs that the slave requires.'
Last_SQL_Errno:
Last_SQL_Error:
Replicate_Ignore_Server_Ids:
Master_Server_Id:
Master_UUID: e00ef9f5-6c4b-11e8--080027de0e0e
Master_Info_File: /data/mysql/mysql3306/data/master.info
SQL_Delay:
SQL_Remaining_Delay: NULL
Slave_SQL_Running_State:
Master_Retry_Count:
Master_Bind:
Last_IO_Error_Timestamp: ::
Last_SQL_Error_Timestamp:
Master_SSL_Crl:
Master_SSL_Crlpath:
Retrieved_Gtid_Set:
Executed_Gtid_Set: 2a4b3562-2ab6-11e8-be7a-080027de0e0e:-
Auto_Position:
Replicate_Rewrite_DB:
Channel_Name:
Master_TLS_Version:
row in set (0.00 sec)
1~XV61QN%60RA~FL%7DQBB8X%7BL.png)

set @@global.gtid_purged='27af30ca-6800-11e8-ad7e-080027de0e0e:1,
2a4b3562-2ab6-11e8-be7a-080027de0e0e:-,
e00ef9f5-6c4b-11e8--080027de0e0e:';
set @@global.gtid_purged='2a4b3562-2ab6-11e8-be7a-080027de0e0e:1-12715694';
zlm@192.168.56.101: [(none)]>set @@global.gtid_purged='2a4b3562-2ab6-11e8-be7a-080027de0e0e:1-12715694';
Query OK, rows affected (0.00 sec) zlm@192.168.56.101: [(none)]>change master to master_host='192.168.56.102',master_port=,master_user='repl',master_password='repl4slave',master_auto_position=;
Query OK, rows affected, warnings (0.01 sec) zlm@192.168.56.101: [(none)]>start slave io_thread;
Query OK, rows affected (0.00 sec) zlm@192.168.56.101: [(none)]>show slave status\G
*************************** . row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 192.168.56.102
Master_User: repl
Master_Port:
Connect_Retry:
Master_Log_File: mysql-bin.
Read_Master_Log_Pos:
Relay_Log_File: relay-bin.
Relay_Log_Pos:
Relay_Master_Log_File:
Slave_IO_Running: Yes
Slave_SQL_Running: No
Replicate_Do_DB:
Replicate_Ignore_DB:
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno:
Last_Error:
Skip_Counter:
Exec_Master_Log_Pos:
Relay_Log_Space:
Until_Condition: None
Until_Log_File:
Until_Log_Pos:
Master_SSL_Allowed: No
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master: NULL
Master_SSL_Verify_Server_Cert: No
Last_IO_Errno:
Last_IO_Error:
Last_SQL_Errno:
Last_SQL_Error:
Replicate_Ignore_Server_Ids:
Master_Server_Id:
Master_UUID: e00ef9f5-6c4b-11e8--080027de0e0e //I changed back the uuid of zlm3 to its previous value.
Master_Info_File: /data/mysql/mysql3306/data/master.info
SQL_Delay:
SQL_Remaining_Delay: NULL
Slave_SQL_Running_State:
Master_Retry_Count:
Master_Bind:
Last_IO_Error_Timestamp:
Last_SQL_Error_Timestamp:
Master_SSL_Crl:
Master_SSL_Crlpath:
Retrieved_Gtid_Set: 2a4b3562-2ab6-11e8-be7a-080027de0e0e:- //New gtid was received.
Executed_Gtid_Set: 2a4b3562-2ab6-11e8-be7a-080027de0e0e:-
Auto_Position:
Replicate_Rewrite_DB:
Channel_Name:
Master_TLS_Version:
row in set (0.00 sec) zlm@192.168.56.101: [sysbench]>start slave sql_thread until sql_before_gtids='2a4b3562-2ab6-11e8-be7a-080027de0e0e:12715696';
Query OK, rows affected (0.00 sec) zlm@192.168.56.101: [sysbench]>show slave status\G
*************************** . row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 192.168.56.102
Master_User: repl
Master_Port:
Connect_Retry:
Master_Log_File: mysql-bin.
Read_Master_Log_Pos:
Relay_Log_File: relay-bin.
Relay_Log_Pos:
Relay_Master_Log_File: mysql-bin.
Slave_IO_Running: Yes
Slave_SQL_Running: No
Replicate_Do_DB:
Replicate_Ignore_DB:
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno:
Last_Error:
Skip_Counter:
Exec_Master_Log_Pos:
Relay_Log_Space:
Until_Condition: SQL_BEFORE_GTIDS
Until_Log_File:
Until_Log_Pos:
Master_SSL_Allowed: No
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master: NULL
Master_SSL_Verify_Server_Cert: No
Last_IO_Errno:
Last_IO_Error:
Last_SQL_Errno:
Last_SQL_Error:
Replicate_Ignore_Server_Ids:
Master_Server_Id:
Master_UUID: e00ef9f5-6c4b-11e8--080027de0e0e
Master_Info_File: /data/mysql/mysql3306/data/master.info
SQL_Delay:
SQL_Remaining_Delay: NULL
Slave_SQL_Running_State:
Master_Retry_Count:
Master_Bind:
Last_IO_Error_Timestamp:
Last_SQL_Error_Timestamp:
Master_SSL_Crl:
Master_SSL_Crlpath:
Retrieved_Gtid_Set: 2a4b3562-2ab6-11e8-be7a-080027de0e0e:-
Executed_Gtid_Set: 2a4b3562-2ab6-11e8-be7a-080027de0e0e:-
Auto_Position:
Replicate_Rewrite_DB:
Channel_Name:
Master_TLS_Version:
row in set (0.00 sec) zlm@192.168.56.101: [sysbench]>select * from sbtest6;
+----+---+---+-----+
| id | k | c | pad |
+----+---+---+-----+
| | | a | b |
| | | c | d |
+----+---+---+-----+
rows in set (0.00 sec) //The incremental data in "sbtest6" had been come again.It was okay this time.
- Binlog server act as a master in this experiment.It can prevent data loss such as miss opeartion of dropping tables whenever the master crashes.
- We can implement as many binlog servers as possible to continuously acquire the binlogs on different masters.
- If the only purpose is to get back the dropping data,replication filter of "replicate_do_table" is not necessary.
- The modification of "sever-uuid" is also neglectable operation.Each gtid contains a differten uuid is completely acceptable.It won't influence our replication except for a little bit complex in output.
利用binlog server及Xtrabackup备份集来恢复误删表(drop)的更多相关文章
- 基于Xtrabackup备份集来恢复某个误删除的表(drop)
Preface Yesterday,I've demonstratated how to rescue a droped and a truncated table based on ...
- Database基础(五):使用binlog日志、XtraBackup备份工具、MySQL AB复制
一.使用binlog日志 目标: 利用binlog恢复库表,要求如下: 启用binlog日志 创建db1库tb1表,插入3条记录 删除tb1表中刚插入的3条记录 使用mysqlbinlog恢复删除的3 ...
- (4.10)mysql备份还原——利用binlog+全备恢复误删表【不推荐使用】
关键误操作:mysql误删除 1.备份+binlog恢复数据 [1.1]场景:不小心误删除某张表 [1.2]解决方法:在另外一台机器,恢复全库+日志,然后导出删除的表,再插入会生产库. [1.3]案例 ...
- 基于mysqldump备份集来恢复某个误操作的表(drop,truncate)
Preface How to rescue a dropped or truncated table online?Dropping or truncating is ddl oper ...
- Oracle备份恢复之无备份情况下恢复undo表空间
UNDO表空间存储着DML操作数据块的前镜像数据,在数据回滚,一致性读,闪回操作,实例恢复的时候都可能用到UNDO表空间中的数据.如果在生产过程中丢失或破坏了UNDO表空间,可能导致某些事务无法回滚, ...
- SQL Server 查看备份集元数据的 4 种方法。
方法 1. restore labelonly 方法 2. restore headeronly 方法 3. restore filelistonly 方法 4. restore verifyonly ...
- Percona XtraBackup 备份原理说明【转】
本文来自:http://mysql.taobao.org/monthly/2016/03/07/ 前言 Percona XtraBackup(简称PXB)是 Percona 公司开发的一个用于 MyS ...
- MySQL · 物理备份 · Percona XtraBackup 备份原理
http://mysql.taobao.org/monthly/2016/03/07/ 前言 Percona XtraBackup(简称PXB)是 Percona 公司开发的一个用于 MySQL 数据 ...
- Percona XtraBackup 备份原理
前言 Percona XtraBackup(简称PXB)是 Percona 公司开发的一个用于 MySQL 数据库物理热备的备份工具,支持 MySQl(Oracle).Percona Server 和 ...
随机推荐
- Python开发第五篇
面向对象程序设计 面向过程编程:就是分析问题的解决步骤,按部就班的编写代码解决问题 函数式编程:就是把代码封装到函数中,然后在使用时调用封装好的函数 面向对象编程:把一类事物所共有的属性和行为提取出来 ...
- jwt 在.net core 2.0的使用
jwt个人觉得更适合作共享session的传递格式,本身保密性不好,容易泄露重要信息,他的格式为头.一些用户的自定义声明.前两者的加密(公私对称密钥形式) 需要引用nuget: System.Iden ...
- CodeForces 506D Mr. Kitayuta's Colorful Graph
brute force ? 其实是平方分解.很容易想到的是每一个颜色建一个图,然后并查集维护一下连通性. 问题在于颜色有O(m)种,每种颜色的图点数都是O(n)的,因此并查集的空间只能重复利用. 但是 ...
- ABI与编译器:ABI是由内核和工具链定义和实现的
http://book.51cto.com/art/201412/460857.htm <Linux系统编程(第2版)>第1章入门和基本概念,这一章着眼于Linux系统编程的基础概念并从程 ...
- 前端高质量知识(三)-JS变量对象详解
在JavaScript中,我们肯定不可避免的需要声明变量和函数,可是JS解析器是如何找到这些变量的呢?我们还得对执行上下文有一个进一步的了解. 在上一篇文章中,我们已经知道,当调用一个函数时(激活), ...
- BestCoder Round #89 1001 Fxx and string
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5944 分析: 竟然 i,j,k成等比数列,即i*k = j*j,还要满足 j|i or j|k. 不防 ...
- BOM编程
1 BOM编程 1.1 入门 BOM就是浏览器对象模型编程,通过javascript引擎提供的四个浏览器对象,操作浏览器,这叫BOM编程 1.2 window对象(重点) window代表的是一个窗口 ...
- tree树形
/** * tree * @param menuBeans * @param pid * @return */ public JSON makeTree(List<MenuBean& ...
- Leetcode463. Island Perimeter
题目 给定一个包含 0 和 1 的二维网格地图,其中 1 表示陆地 0 表示水域. 网格中的格子水平和垂直方向相连(对角线方向不相连).整个网格被水完全包围,但其中恰好有一个岛屿(或者说,一个或多个表 ...
- TCP_Wrappers & PAM & Nsswitch服务
cpwrapper:工作在第四层(传输层),能够对有状态连接的服务进行安全检测并实现访问控制的工具.部分功能上跟iptables重叠. 对于进出本主机访问某特定服务的连接基于规则进行检查的一个访问控制 ...