蚊子今天下午搭了一主三從的mysql復制,結果所有服務器都配置好后,發現從上報如下的錯誤
意思就是從上的server_id和主的一樣的,經查看發現從上的/etc/my.cnf中的server_id=1這行我沒有注釋掉(在下面復制部分我設置了server_id),于是馬上把這行注釋掉了,然后重啟mysql,發現還是報同樣的錯誤。
使用如下命令查看了一下server_id
發現,mysql并沒有從my.cnf文件中更新server_id,既然這樣就只能手動修改了
如此執行后,slave恢復了正常。
不過稍后蚊子使用/etc/init.d/mysqld restart重啟了mysql服務,然后查看slave狀態,發現又出現了上面的錯誤,然后查看server_id發現這個數值又恢復到了1。
之后蚊子又重新查看了一下/etc/my.cnf的內容,確認應該不是這個文件的問題,于是去google查了一下,看到mysql在啟動的時候會查找/etc/my.cnf、DATADIR/my.cnf,USER_HOME/my.cnf。
于是我執行了
居然在/usr/local/mysql這個目錄下發現了my.cnf文件,于是蚊子將這個文件刪除了,然后再重啟mysql服務,發現一切恢復了正常。如果有人也出現類似的問題,不妨試試這個辦法吧。
新聞熱點
疑難解答