【MySQL】Could not initialize master info structure

对一个M-M 架构的mysql 重新搭建双master ,出现了两个报错:

ERROR 29 (HY000): File '/home/mysql/data3306/slave-relay.066538' not found (Errcode: 2)

ERROR 1201 (HY000): Could not initialize master info structure;

(none)@3306 14:34:29>CHANGE MASTER TO

    -> MASTER_HOST='10.1.147.164',

    -> MASTER_USER='replicator',

    -> MASTER_PASSWORD='yangql',

    -> MASTER_LOG_FILE='mysql-bin.000002',

    -> MASTER_LOG_POS=106;

ERROR 29 (HY000): File '/home/mysql/data3306/slave-relay.066538' not found (Errcode: 2)

查看 slave-relay-log.index 文件

[root@linux11-02 data3306]#cat slave-relay-log.index 

/home/mysql/data3306/slave-relay.066537

/home/mysql/data3306/slave-relay.066538

/home/mysql/data3306/slave-relay.066539

/home/mysql/data3306/slave-relay.066540

/home/mysql/data3306/slave-relay.066541

/home/mysql/data3306/slave-relay.066542

/home/mysql/data3306/slave-relay.066543

/home/mysql/data3306/slave-relay.066544

/home/mysql/data3306/slave-relay.066545

data_dir 目录并不存在这些relay.log file 因为要重新创建,所以清除slave-relay-log.index 之后 重新指定 master

(none)@3306 14:37:36>CHANGE MASTER TO

    -> MASTER_HOST='10.1.147.164',

    -> MASTER_USER='replicator',

    -> MASTER_PASSWORD='yangql',

    -> MASTER_LOG_FILE='mysql-bin.000002',

    -> MASTER_LOG_POS=106;

ERROR 1201 (HY000): Could not initialize master info structure; more error messages can be found in the MySQL error log

(none)@3306 14:37:42>

出现上述报错的原因是因为已经存在一个86KB的文件master.info(之前已经存在的文件),该文件导致mysqld提示复制无法初始化主数据库服务器的信息,直接删除该文件:

[root@linux11-02 data3306]# rm master.info

rm: remove regular file `master.info'? y

[root@linux11-02 data3306]# rm slave-relay-log.info 

rm: remove regular empty file `slave-relay-log.info'? y

[root@linux11-02 data3306]# 

再执行CHANAGE MASTER TO 命令,复制搭建成功,

(none)@3306 14:50:50>CHANGE MASTER TO

    -> MASTER_HOST='10.1.147.164',

    -> MASTER_USER='replicator',

    -> MASTER_PASSWORD='yangql',

    -> MASTER_LOG_FILE='mysql-bin.000002',

    -> MASTER_LOG_POS=106;

Query OK, 0 rows affected (0.26 sec)

且生成了记录主数据库服务器信息的master.info和 slave-relay-log.info文件。

时间: 2024-10-31 06:57:25

【MySQL】Could not initialize master info structure的相关文章

MySQL 出现 Could not initialize master info structure 修复

 MySQL 设定同步 Replication, 将下述命令拆成两组输入, 如下述: 1.mysql> CHANGE MASTER TO MASTER_HOST='master.example.com', MASTER_USER='repl', MASTER_PASSWORD='repl_password'; 2.mysql> CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=107; 设定 Replicat

【MySQL】Linux下MySQL 5.5、5.6和5.7的RPM、二进制和源码安装

  [MySQL]Linux下MySQL 5.5.5.6和5.7的RPM.二进制和源码安装   1.1  BLOG文档结构图       1.2  前言部分 1.2.1  导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩)O~: ① MySQL的二进制安装过程(重点) ② MySQL多实例管理(mysqld_multi) ③ MySQL的源码编译安装过程 ④ Linux的逻辑卷的使用 ⑤ 文件的MD5值 ⑥ 访问MySQL的几种客

解决mysql报错ERROR 1201 (HY000):Could not initialize master info structure

在做mysql主从复制时遇到个ERROR 1201 (HY000): Could not initialize master info structure .出现这个问题的原因是之前曾做过主从复制! 解决方案是: 运行命令 stop slave; 成功执行后继续运行 reset slave; 然后重新设置主从复制. 具体过程如下: mysql> change master to master_host='127.0.0.1', master_user='user', master_pass  w

【MySQL】Innodb 恢复工具介绍

      在和数据打交道的过程中,总会遇到误删除数据的情况,在没有备份和binlog的情况下,如何恢复呢?本文介绍一个工具Percona Data Recovery Tool for InnoDB  使用 该工具的 注意事项: 1 The tools work only for InnoDB/XtraDB tables, and will not work with MyISAM tables. Percona does have a preliminary set of tools for

【MySQL】MySQL的四种事务隔离级别

[MySQL]MySQL的四种事务隔离级别 本文实验的测试环境:Windows 10+cmd+MySQL5.6.36+InnoDB 一.事务的基本要素(ACID) 1.原子性(Atomicity):事务开始后所有操作,要么全部做完,要么全部不做,不可能停滞在中间环节.事务执行过程中出错,会回滚到事务开始前的状态,所有的操作就像没有发生一样.也就是说事务是一个不可分割的整体,就像化学中学过的原子,是物质构成的基本单位.  2.一致性(Consistency):事务开始前和结束后,数据库的完整性约束

【Mysql】—— 报错:Can't call commit when autocommit=true

java.sql.SQLException: Can't call commit when autocommit=true at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:934) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:931) at com.mysql.jdbc.ConnectionImpl.commit(ConnectionImpl.jav

mysql5.5提示Could not initialize master info structure

(一)   环境描述 操作系统:Linux x3755-31 2.6.18-308.el5 硬件配置:2*8Core CPU,6*SAS*15K*600G,RAID1+0,256G MEM 数据库版本:MySQL5.5.27-log 数据库架构:MySQL双主复制,及双主复制+外挂Slave模式(注:读写分离模式) (二)   故障信息 a)         复制相关的my.cnf参数配置 server-id=3306 slave-skip-errors=1022,1032,1062 log_s

【MySQL】Got fatal error 1236原因和解决方法

一 前言  MySQL 的主从复制作为一项高可用特性,用于将主库的数据同步到从库,在维护主从复制数据库集群的时候,作为专职的MySQL DBA,笔者相信大多数人都会遇到"Got fatal error 1236 from master when reading data from binary log" 这类的报错/报警.本文整理了常见的几种 error 1236 报错,并给出相应的解决方法,有所不足之处,当然也希望各位读者朋友指正. 二 常见的error 1236 报错2.1 log

【MySQL】如何快速执行 binlog

[背景] 维护mysql的时候,总会遇到数据库恢复的例子.如果把备份集恢复出来相对比较简单.然而如果遇到恢复到时间点的例子,把一个MySQL实例恢复出来之后,需要执行binlog做增量恢复. [方法一] 常见的办法是用mysqlbinlog解析binlog,将解析出来的内容重定向到mysql命令行执行. #start是mysql-bin后面的数字 i=start 2.while [ $i -lt end ] 3. do 4. mysqlbinlog mysql-bin.$i | mysql -h