17.2.2.1 The Slave Relay Log  Slave中继日志

中继日志, 像binary log,有一组文件组成包含events 描述数据库的修改,和一个index文件包含所有使用过的relay log文件的名字

术语"relay log file"通常表示一个但都数字文件包含数据库events.

Relay log 文件有相同的格式和binary log 文件可以使用mysqlbinlog读取

默认情况下,relay log 文件名格式为host_name-relay-bin.nnnnnn 在数据目录,

host_name  是slave server host的名字  nnnnnn 是一个序列号。

slave 使用一个index file 来跟踪 relay log files 当前在使用的

默认的 relay log index file 名字是 host_name-relay-bin.index在数据目录下

默认的relay log 文件和relay log index 名字可以覆盖

如果一个slave 使用默认的基于主机名的relay log file names,

改变一个slave的host name 在复制已经被设置后会导致复制失败由于打开relay log文件失败,不能找到目标日志

如果你预期 一个slave的host name 可能将来被改变,你可以避免这个问题通过使用

 --relay-log and --relay-log-index options  来指定relay log文件名 当你在初始化设置slave的时候

这样会让名字于server hostname 无关

如果你遇到的问题在复制已经开始,一种方式是停止server,谋划旧的日志到新的relay log index file,

然后重启slave 在一个Unix 系统,可以这么做:

shell> cat new_relay_log_name.index >> old_relay_log_name.index
shell> mv old_relay_log_name.index new_relay_log_name.index A slave server creates a new relay log file under the following conditions: 一个slave server 创建一个新的relay log 在下面的条件: 1. 每次 I/O thread 启动 2. 当日志被刷新,比如 FLUSH LOGS or mysqladmin flush-logs. 3.当当前的relay logfile的大小变的太大, mysql> show variables like '%max_relay_log_size%';
+--------------------+-------+
| Variable_name | Value |
+--------------------+-------+
| max_relay_log_size | 0 |
+--------------------+-------+
1 row in set (0.00 sec) 1.如果 max_relay_log_size 值是大于0, 那是最大的relay log file size 2.如果值为0,max_binlog_size 决定了relay log files的最大值 mysql> show variables like '%max_binlog_size%';
+-----------------+-----------+
| Variable_name | Value |
+-----------------+-----------+
| max_binlog_size | 536870912 |
+-----------------+-----------+
1 row in set (0.00 sec) mysql> exit
Bye
Vsftp:/data01/mysql# cat /etc/my.cnf | grep max_binlog_size
max_binlog_size = 512M
Vsftp:/data01/mysql# SQL thread 自动删除每个relay log文件一旦他已经执行了所有的events 不再被需要。 这里没有机制对于删除relay log 因为SQL thread 做这个事情

17.2.2.1 The Slave Relay Log Slave中继日志的更多相关文章

  1. ERROR 1872 (HY000): Slave failed to initialize relay log info structure from the repository

    salve复制线程停止,尝试start slave 时报ERROR 1872错误mysql> system perror 1872 MySQL error code 1872 (ER_SLAVE ...

  2. Slave failed to initialize relay log info structure from the repository

    现象 查看slave 服务状态 show slave status\G; 错误 Last_Errno: 1872 Last_Error: Slave failed to initialize rela ...

  3. 【故障处理】ERROR 1872 (HY000): Slave failed to initialize relay log info structure from the repository

    今天在使用冷备份文件重做从库时遇到一个报错,值得研究一下. 版本:MySQL5.6.27 一.报错现象 dba:(none)> start slave; ERROR (HY000): Slave ...

  4. Slave SQL_THREAD如何重放Relay log

    复制的介绍: 根据日志定义的模式不一样,可以分为:Statement(SBR)模式,Row(RBR)格式或者是MIXED格式,记录最小的单位是一个Event,binlog日志前4个字节是一个magic ...

  5. mysql5.7启动slave报错 ERROR 1872 (HY000): Slave failed to initialize relay log info structure from the repository

    原因:检查my.cnf,原来没指定relay_log,mysql默认产生的relay_log名被该server上的另一个mysql slave占用了. 解决方法:1.在my.cnf中添加 relay_ ...

  6. MySQL复制报错(Slave failed to initialize relay log info structure from the repository)

    机器重启以后,主从出现了问题,具体报错信息: Slave failed to initialize relay log info structure from the repository 解决方案: ...

  7. my32_ error 1872 Slave failed to initialize relay log info structure from the repository

    重启了实例后,slave进程无法开启 Last_SQL_Errno: Last_SQL_Error: Slave failed to initialize relay log info structu ...

  8. mysql报错1872: Slave failed to initialize relay log info structure from the repository

    ERROR 1872 (HY000): Slave failed to initialize relay log info structure from the repository 在一台主机上增加 ...

  9. mysql 主从关系ERROR 1872 (HY000): Slave failed to initialize relay log info structure from the repository

    连接 amoeba-mysql出现Could not create a validated object, cause: ValidateObject failed mysql> start s ...

随机推荐

  1. (转)ASP.net中Timer无刷新定时器.

    Timer控件要实现无刷新,得用到ajax技术 首先得添加一个ScriptManager控件,然后再添加一个UpdatePanel用于存放Timer控件内容的,就可以实现无刷新了.下面是详细的内容: ...

  2. 20160501--struts2入门3

    一.自定义拦截器 要自定义拦截器需要实现com.opensymphony.xwork2.interceptor.Interceptor接口: public class PermissionInterc ...

  3. git研究1

    error:src refspec master does not match any  将本地GIT版本库PUSH到一个GITHUB上一个空的版本库时出现错误,本地版本库为空, 空目录不能提交 (只 ...

  4. JAVA深入研究——Method的Invoke方法

    http://www.cnblogs.com/onlywujun/p/3519037.html 在写代码的时候,发现Method可以调用子类的对象,但子类即使是改写了的Method,方法名一样,去调用 ...

  5. ACM——A + B Problem (4)

    A + B Problem (4) 时间限制(普通/Java):1000MS/3000MS          运行内存限制:65536KByte总提交:2496            测试通过:124 ...

  6. Android设计模式系列

    http://www.cnblogs.com/qianxudetianxia/category/312863.html Android设计模式系列(12)--SDK源码之生成器模式(建造者模式) 摘要 ...

  7. 九度OJ 1042 Coincidence -- 动态规划(最长公共子序列)

    题目地址:http://ac.jobdu.com/problem.php?pid=1042 题目描述: Find a longest common subsequence of two strings ...

  8. 九度OJ 1468 Sharing -- 哈希

    题目地址:http://ac.jobdu.com/problem.php?pid=1468 题目描述: To store English words, one method is to use lin ...

  9. 原生js的兼容问题总结

    获取元素的非行间样式 function getStyle(obj, name) { //获取元素的非行间样式 if (obj.currentStyle) { return obj.currentSty ...

  10. Sumbline编译Less

    Less教程 Sublime Text 2的Less2Css插件介绍与安装 网址 http://fdream.net/blog/article/783.aspx 如果出现node.exe不是内部命令的 ...