GTID介绍和功能

2.6.2 GTID的组成
severi_uuid:TID

①severi_uuid在MySQL初始化时将自动生成:

cat /data/mysql/data/auto.cnf

[auto]

server-uuid=92289477-445d-11eb-a0dc-000c290e1c56

②TID是一个自增长的数据,从1开始

92289477-445d-11eb-a0dc-000c290e1c56:1-15

2.6.3 GTID的幂等性
如果拿有GTID的日志去恢复时,检查当前系统中是否有相同GTID号,有相同的就自动跳过

会影响到binlog恢复和主从复制

2.6.4 GTID的开启和配置

vim /etc/my.cnf //在[mysqld]中加

gtid-mode=on

enforce-gtid-consistency=true

重启服务

2.6.5 查看GTID信息
show master status;

image-20230103142517714

2.6.6 基于GTID,binlog恢复

1)截取日志

show binlog events in 'mysql-bin.000003' ; //查看事件

mysqlbinlog mysql-bin.000003

cd /data/binlog/

mysqlbinlog --skip-gtids --include-gtids='3155b1bd-865f-11ed-8a76-000c29d9d49b:1-3' mysql

bin.000003 >/tmp/gtid.sql

--skip-gtids 作用:在导出时,忽略原有的gtid信息,恢复时生成最新的gtid信息

2)恢复数据

mysql> set sql_log_bin=0;

mysql> source /tmp/gtid.sql

mysql> set sql_log_bin=1;

2.6.7 GTID**相关的参数
--skip-gtids //作用:在导出时,忽略原有的gtid信息,恢复时生成最新的gtid信息

指定要截取哪些范围的数据(截取6和8的数据):--include-gtids='92289477-445d-11eb-a0dc-

000c290e1c56:6','92289477-445d-11eb-a0dc-000c290e1c56:8'

指定要排除的范围数据(不截取6和8的数据):

--exclude-gtids='92289477-445d-11eb-a0dc-000c290e1c56:6','92289477-445d-11eb-a0dc-

000c290e1c56:8'

3.慢日志(slow-log)(了解,主要用在SQL优化)

posted @ 2024-08-31 14:59  Crushz  阅读(52)  评论(0)    收藏  举报