5ol.cc 发表于 2018-10-7 12:00:02

MySQL复制--slave设置读取binlog的位置

//初始化master_info结构  
int Master_info::mi_init_info()
  
{
  
    if (inited)
  
      DBUG_RETURN(0);//如果已经创建master_info文件,直接退出
  
    handler->init_info();//创建/打开master_info文件
  
    if (check_return == REPOSITORY_DOES_NOT_EXIST){//如果master_info文件是刚创建的,设置需读取的log位置是4
  
      init_master_log_pos();
  
      |--master_log_name= 0;
  
      |--master_log_pos= BIN_LOG_HEADER_SIZE;
  
      |--ssl_verify_server_cert= 0;
  
      |-- heartbeat_period= min(SLAVE_MAX_HEARTBEAT_PERIOD,(slave_net_timeout/2.0));
  
    }else{
  
      read_info(handler);//读取文件
  
    }
  
    inited= 1;
  
    flush_info(TRUE);
  
    |--handler->set_sync_period(sync_masterinfo_period);//默认10000
  
    |--flush_io_cache(&info_file);
  
    |--my_sync(info_fd, MYF(MY_WME));
  
    DBUG_RETURN(0);


页: [1]
查看完整版本: MySQL复制--slave设置读取binlog的位置