zjxhx 发表于 2018-10-1 14:04:15

MySQL主从复制之主库宕机处理

  主库宕机Master DOWN机-企业场景一主多从宕机从库切换主继续和从同步过程详解
  登陆从库,show processlist;
  查看两个线程的更新状态;
  查看所有从库中,查看
  /application/mysql-5.6.20/data/mysql.info
  确保更新完毕,看看两个从库中哪个库最快,经过测试没有延迟的情况POS差距很小,甚至一致的
  然后选取其中POS最大的作为主库
  1、确保所有relay log 全部更新完毕
  在每个从库上执行 stop slave io_thread; show processlist;

  直到看到Has read all>  2、登陆POS值最大的从库执行如下命令:
  mysql -uroot -p123456-S/application/mysql-5.6.20/mysql.sock
  stop slave;
  retset master;
  quit;
  3、进到数据库数据目录,删除master.info>
  cd /application/mysql-5.6.20/data

  rm -f master.info>  检查授权表,read-only等参数
  4、提升从库为主库
  vim /application/mysql-5.6.20/my.cnf
  开启:
  log-bin = /application/mysql-5.6.20/mysql-bin
  //如果不存在log-slave-updates read-only等一定要注释掉它。
  /application/mysql-5.6.20/mysql restart
  到此为止,提升主库完毕。
  5、如果主库服务器没宕机,需要去主库binlog补全,提升主库为从库
  6、其他从库操作
  已检查(同步user rep均存在)
  登陆从库
  stop slave
  cahnge master to master_host='10.0.0.7;// 如果不同步,就指定位置点
  start slave;
  show slave status\G
  7、修改程序的配置文件从主数据库到从数据库(现在新的主库)
  平时访问数据库用域名,则直接可以修改hosts解析
  8、修理损坏的主库,完成后作为从库使用,或者切换
  
  
  
  我们现在讲的是主库意外宕机,例如我们有计划切换,怎么做呢?
  1)主库锁表
  2)登陆所有的库查看同步状态,是否完成
  后面操作与前面同1至4步骤

页: [1]
查看完整版本: MySQL主从复制之主库宕机处理