MySQL 出現 Could not initialize master info structure 修復

於 MySQL 設定同步 Replication, 將下述命令拆成兩組輸入, 如下述:

  1. mysql> CHANGE MASTER TO MASTER_HOST='master.example.com', MASTER_USER='repl', MASTER_PASSWORD='repl_password';
  2. mysql> CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=107;

設定 Replication 完成後, start slave 無法啟動, 出現下述錯誤訊息:

Could not initialize master info structure, more error messages can be found in the MySQL error log

要怎麼解決呢?

MySQL Replication 出現 Could not initialize master info structure 修復

MySQL error log 看不出有什麼錯誤訊息, 可看此篇的討論: MySQL :: Could not initialize master info structure, more error messages can be found in the MySQL error log

下述直接寫解法:

  1. mysql> reset slave; # 重點就是這行
  2. mysql> CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=107; # 請依照自行環境設定
  3. mysql> start slave; # 就正常了.
  4. 註: 重新設置 slave, MASTER_LOG_FILE 和 MASTER_LOG_POS 會被清空, 所以需要重新設置.

作者: Tsung

對新奇的事物都很有興趣, 喜歡簡單的東西, 過簡單的生活.

在〈MySQL 出現 Could not initialize master info structure 修復〉中有 4 則留言

  1. 請問 my.ini 設定 server id = 1,master-host等都未設定
    但是事件簿顯示
    Slave I/O: Fatal error: Invalid (empty) username when attempting to connect to the master server.

    會有其它地方將其設定成slave?另有辦法追master-host?

    謝謝

    1. 不懂,你現在應該是在 Slave 看到這個訊息,但是你都不知道 Master 在哪邊,那當然沒辦法連到 Master server。

      你只能先找出來 Master 在哪邊了~

  2. 因為有台mysql被設成slave,但在my.ini找不到相關的設定資訊.所以想請教是否還有其它方式可以設定mysql replication?
    也不清楚誰設定,所以是否其它資訊可以回追?

    謝謝

發表迴響

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料