MySQL bug:server-id默认被自动置为1

来源:互联网 发布:php电商项目实战 编辑:程序博客网 时间:2024/05/16 09:53

昨天同事在做主从时,从库报如下错误:

[plain] view plaincopyprint?在CODE上查看代码片派生到我的代码片
  1. <span style="font-family: Comic Sans MS; font-size: 18px;">Got fatal error 1236 from master when reading data from binary log: 'Misconfigured master - server id was not set'</span> 

粗粗看好像是master的server-id没有设置,但同事做如下查询:

[plain] view plaincopyprint?在CODE上查看代码片派生到我的代码片
  1. <span style="font-family: Comic Sans MS; font-size: 18px;">备库采集: 
  2. root@localhost Fri May 23 14:18:59 2014 14:18:59 [(none)]> show variables like '%server_id%'; 
  3. +---------------+-------+ 
  4. | Variable_name | Value | 
  5. +---------------+-------+ 
  6. | server_id     | 2     |  
  7. +---------------+-------+ 
  8.  
  9. 主库采集: 
  10.  
  11. mysql> show variables like '%server%'; 
  12. +----------------------+-------------------+ 
  13. | Variable_name        | Value             | 
  14. +----------------------+-------------------+ 
  15. | character_set_server | latin1            | 
  16. | collation_server     | latin1_swedish_ci | 
  17. | server_id            | 1                 | 
  18. +----------------------+-------------------+</span> 

此时,复制环境的server-id确实是全局唯一的。为何报错?

由于业务是用于存储hadoop的元数据,之前MySQL版本较低,同事用了比master版本高的slave,本以为是这个原因,但在MySQL 的bug列表上发现:

该发现否定了我们之前的判断,经过同事那边的测试,也确实是这个bug :-)


祝周末愉快,

Good Luck!

0 0