我在MariaDB中设置了多主环复制。 3台服务器。
我的一台服务器的磁盘空间不足,我最终需要重启服务器。此后,两个从属服务器在从属状态下报告此错误。
Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: 'Error: connecting slave requested to start from GTID 1-1-426253, which is not in the master's binlog'
我真的很困惑如何从这个错误中恢复我的奴隶,有人可以告诉我如何告诉这个奴隶服务器从哪个主人的正确GTID开始?
由于
答案 0 :(得分:3)
我把它全部恢复了工作。我只需通过转到主服务器并键入SHOW MASTER STATUS;
找到主服务器日志和位置号然后我在奴隶身上使用了这些信息并做了这件事。
STOP SLAVE 'MDB1';
CHANGE MASTER "MDB1" TO master_host="xxx.xxx.xxx.xxx", master_port=3306, master_user="****", master_password="****", master_log_file="mariadb-bin.000394", master_log_pos=385;
START SLAVE 'MDB1';
然后检查一切正常,然后我改回使用GTID
STOP SLAVE 'MDB1';
CHANGE MASTER "MDB1" TO master_use_gtid=slave_pos;
START SLAVE 'MDB1';
之后它全部重新开始运行。
答案 1 :(得分:0)
Moshe L,这是我的主人binlog设置
server-id = 1
gtid_domain_id = 1
gtid_strict_mode = 1
report_host = MDB1
auto_increment_increment = 3
auto_increment_offset = 1
slave_parallel_threads = 12
replicate_ignore_db = mysql
replicate_ignore_table = MA4_Data.EOD_FileCache
log_bin = /var/log/mysql/mariadb-bin
log_bin_index = /var/log/mysql/mariadb-bin.index
binlog_format = mixed
#binlog_commit_wait_count = 12
#binlog_commit_wait_usec = 10000
#slave_compressed_protocol = 1
# not fab for performance, but safer
sync_binlog = 1
expire_logs_days = 10
max_binlog_size = 100M
# slaves
relay_log = /var/log/mysql/relay-bin
relay_log_index = /var/log/mysql/relay-bin.index
relay_log_info_file = /var/log/mysql/relay-bin.info
答案 2 :(得分:-1)
这是另一种可以尝试的解决方案。
stop slave;
reset slave;
start slave