xtrabackup不在xtrabackup_binlog_info中写入gtid信息。

问题描述 投票:0回答:1

软件版本。

xtrabackup 8.0.12
percona-xtradb-cluster-server 8.0.18-9

我在运行xtrabackup的时候有这个选项。

--defaults-file=/etc/mysql/my.cnf --backup --user=backup
--password=**** --parallel=4 --no-timestamp --target-dir=/my-backup-dir

一些服务器选项:

binlog_format | ROW
gtid_mode     | ON_PERMISSIVE
enforce_gtid_consistency | ON

文件 xtrabackup_binlog_info 只有binlog文件名和位置。

mysql-bin.000159        251

没有GTID 所以我无法创建基于GTID的复制 从这个备份中恢复一个从属系统

我应该怎么做才能让xtrabackup包含这些信息?

更新:

检查GTIDs是否启用。

show global variables like '%gtid%';

| Variable_name                    | Value                                                                                                           |
| binlog_gtid_simple_recovery      | ON                                                                                                              |
| enforce_gtid_consistency         | ON                                                                                                              |
| gtid_executed                    | c0e3de06-a2a6-11ea-913c-c7b046cf5782:1-3399594,
de211648-2642-ee18-628d-dc48283b005c:1-3697598:3877279-10141440 |
| gtid_executed_compression_period | 1000                                                                                                            |
| gtid_mode                        | ON_PERMISSIVE                                                                                                   |
| gtid_owned                       |                                                                                                                 |
| gtid_purged                      | c0e3de06-a2a6-11ea-913c-c7b046cf5782:1-2661056,
de211648-2642-ee18-628d-dc48283b005c:1-3697598:3877279-10141440 |
| session_track_gtids              | OFF                                                                                                             |
show master status;

| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set                                                                                               |
| mysql-bin.000166 | 15285372 |              |                  | c0e3de06-a2a6-11ea-913c-c7b046cf5782:1-3358798,
de211648-2642-ee18-628d-dc48283b005c:1-3697598:3877279-10141440 |

(pavel.selivanov@localhost) [kassa_prod]> show binlog events in 'mysql-bin.000166' limit 7;

| Log_name         | Pos  | Event_type     | Server_id | End_log_pos | Info
| mysql-bin.000166 |    4 | Format_desc    |      4315 |         124 | Server ver: 8.0.18-9, Binlog ver: 4                                                                           |
| mysql-bin.000166 |  124 | Previous_gtids |      4315 |         251 | c0e3de06-a2a6-11ea-913c-c7b046cf5782:1-3347159,
de211648-2642-ee18-628d-dc48283b005c:3697598:3877279-10141440 |
| mysql-bin.000166 |  251 | Gtid           |      4315 |         330 | SET @@SESSION.GTID_NEXT= 'c0e3de06-a2a6-11ea-913c-c7b046cf5782:3347160'                                       |
| mysql-bin.000166 |  330 | Query          |      4315 |         411 | BEGIN                                                                                                         |
| mysql-bin.000166 |  411 | Table_map      |      4315 |         499 | table_id: 150 (db.table)                                                                      |
| mysql-bin.000166 |  499 | Update_rows    |      4315 |        3475 | table_id: 150 flags: STMT_END_F                                                                               |
| mysql-bin.000166 | 3475 | Xid            |      4315 |        3506 | COMMIT /* xid=9611331 */                                                          
mysql percona percona-xtradb-cluster innobackupex
1个回答
0
投票

手册:

  • ON_PERMISSIVE:新交易是GTID交易。复制的交易可以是匿名交易,也可以是GTID交易。

检查 show global variables like 'gt%'; 或在你的二进制日志中,如果你真的有GTID交易的话。

其实你不需要做什么特别的事情,让xtrabackup在xtrabackup_binlog_info文件中包含GTIDs。如何创建一个新的(或修复一个损坏的)基于GTID的从机?

© www.soinside.com 2019 - 2024. All rights reserved.