mysqlマスタークリアランスから再同期


生産環境mysqlは主にクラスタから、ライブラリデータの破損から回復できず、再起動後に問題を解決できず、ライブラリをクリアし、再びメインライブラリからデータを同期しようとした.
  • スレーブライブラリにログインし、slave状態を停止し、スレーブライブラリマスタースレーブ情報
  • をクリアする.
    stop slave;
    reset slave all;
    
  • ライブラリから同期データベース
  • を削除する.
  • バックアップマスター
  • mysqldump -uxxx -pxxx --routines --single_transaction --master-data=2 --all-databases > /data/bak.sql
    
  • バックアップファイルのbinlogとpos値
  • を表示
        head -25 bak.sql 
    

    行が見える
    – CHANGE MASTER TO MASTER_LOG_FILE=‘mysql-bin.000122’, MASTER_LOG_POS=471450840;
  • sqlファイルをスレーブ
  • にコピー
  • からライブラリからのリカバリデータにログインする
  • source /data/bak.sql
    
  • slave
  • を起動
    change master to master_host='x.x.x.x',master_user='xxx',master_password='xxx',master_log_file='mysql-bin.000122',master_log_pos=471450840;
    start slave;
    

    8.ステータスの表示
    show slave status\G;