IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

MySQL5.5数据库复制搭建报错之Could not initialize master info structure

MySQLOPS 数据库与运维自动化技术分享 2012-12-09 20:16:32 累计浏览 5,408 次
本机暂存

导读

鉴于MySQL5.5数据库产品的性能提升不明显,软件产品稳定性不佳,且新增加的功能也不足突破,所以生产环境中只有几套应用使用MySQL5.5版本支撑,以培养与掌握MySQL5.5的经验和技术,所以个人对MySQL5.5系列的实战也不多。现有一个项目,因服务器配置的特殊性,以及业务特点、数据容量、数据访问等也非常特殊,不得不考虑采用MySQL5.5,且国内某mysql服务提供商技术人员指定要求的版本号为MySQL5.5.27。综合上述信息导致今天无意碰到一个MySQL数据库复制搭建过程中出现的错误信息,可能其他同行也可能会碰见,特此写一篇技术博文分享给大家。

(一)   环境描述

操作系统: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_slave_updates=1

log_bin_trust_function_creators=1

auto_increment_increment=2

auto_increment_offset=1

#bind-address=10.0.2.31

#hostname=

log-bin=/data/mysqldata/binlog/mysql-bin.index

log-bin=/data/mysqldata/binlog/mysql-bin

relay-log=/data/mysqldata/relaylog/mysql-relay-bin.index

relay-log=/data/mysqldata/relaylog/mysql-relay-bin

b)         复制搭建步骤

l  复制相关参数环节有一个存储中继日志文件的目录,遗憾是过往我都是默认方式存储,现有的安装脚本未写入相关命令;

l  手工创建目录命令:mkdir -p /data/mysqldata/relaylog,未执行更改属主的命令:

chown mysql:mysql  /data/mysqldata/relaylog

l  mysql命令下输入复制搭建的命令:

CHANGE MASTER TO master_host=’10.0.2.30′,master_user=’repl’,

            master_password=’repl#3306′,master_log_pos=499,

                master_log_file=’mysql-bin.000001′;

l  执行命令之后出现的错误信息为:

ERROR 29 (HY000): File ‘/data/mysqldata/relaylog/mysql-relay-bin.index’ not found (Errcode: 13)

备注:执行shell命令工具 perror 13 会告诉你是无访问权限

l  因权限问题出错,那么就必须为中继日志文件目录变更权限信息,命令为:

chown mysql:mysql  /data/mysqldata/relaylog

l  mysql命令行下继续执行复制搭建的命令CHANGE MASTER TO …,依然报错,查阅*.err文件可以发现的信息为:

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

(三)   解决办法

查看*.err文件中的错误提示信息,咂看还以为是MySQL软件存在复制方面的BUG,这个时候我们主动去看下数据目录,配置的路径为:/data/mysqldata/mydata其下已经生成了一个0KB的空文件master.info,正式因为这个文件导致mysqld提示复制无法初始化主数据库服务器的信息,直接删除0字节文件:rm  -f  /data/myqldata/mydata/master.info,再充型执行CHANAGE MASTER TO 命令,复制搭建成功,且生成了记录主数据库服务器信息的master.info文件。

(四)   总结

a)       工作中不严谨的作风是出现问题的根源;

b)       问题的发生现象可能会迷惑我们的演讲,必须学会正反方向推理和分析;

c)       掌握过硬的技术,熟悉使用的产品,是减少或解决问题的利剑;

同分类推荐文章

  1. 使用deepseek进行Oracle恢复,引起重大故障 (2026-06-22 10:56:00)
  2. 接手一个只差临门一脚的数据库恢复 (2026-06-18 00:13:09)
  3. 我做了一个 AI 版的 StarRocks 升级风险扫描工具,直接帮我定位到一个风险 (2026-06-15 01:00:00)

查看更多 数据库 文章 →

建议继续学习

  1. 用Hyer来进行网站的抓取 (累计阅读 158,253)
  2. MySQL数据库在实际应用一些方面的介绍 (累计阅读 36,401)
  3. WordPress插件开发 -- 在插件使用数据库存储数据 (累计阅读 29,164)
  4. Mysql监控指南 (累计阅读 21,352)
  5. 由浅入深探究mysql索引结构原理、性能分析与优化 (累计阅读 16,523)
  6. 在Apache2.2.XX下安装Mod-myvhost模块 (累计阅读 13,058)
  7. 15个最好的免费开源电子商务平台 (累计阅读 12,541)
  8. 浅谈MySQL索引背后的数据结构及算法 (累计阅读 11,909)
  9. 整理了一份招PHP高级工程师的面试题 (累计阅读 11,709)
  10. 深入浅出INNODB MVCC机制与原理 (累计阅读 9,693)