MySQL數據庫主從出錯 Slave_IO_Running: No 的解決辦法

字號+ 編輯: 种花家 修訂: 面向ICU 來源: 原创 2023-09-11 我要說兩句(1)

在設置MySQL主從複制的時候, 使用SHOW SLAVE STAUTS命令發現Slave_IO_Running狀態爲NO, 怎麽辦呢?

打开MySQL错误日志, 假设日志地址在 /usr/local/mysql/var/localhost.localdomain.pid 打开文件, 发现有以下一行错误报出来:

Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: 'Could not find first log file name in binary log index file'

在MySQL控制台下面输入以下命令, 发觉Slave_IO_Running:  No

SHOW SLAVE STATUS\G

一方面原因是因为网络通信的问题, 也有可能是日志读取错误的问题;

另一方面原因是在slave服务器进行了写操作, 改了东西。怎么办!

解决办法:

从机器停止slave

mysql> slave stop;

到master机器登录mysql:

记录master的bin的位置,例如:

mysql> show mster status;
+-------------------+----------+--------------+-------------------------------------------+
| File       | Position | Binlog_Do_DB | Binlog_Ignore_DB                   |
+-------------------+----------+--------------+-------------------------------------------+
| mysqld-bin.000010 |  106  |        | information_schema,mysql            |
+-------------------+----------+--------------+-------------------------------------------+

日志为mysqld-bin.000010

刷新日志(不一定需要):

mysql> flush logs;

因为刷新日志file的位置会+1,即File变成为:mysqld-bin.000011

马上到slave执行

mysql> CHANGE MASTER TO MASTER_LOG_FILE='mysqld-bin.000011',MASTER_LOG_POS=106;
mysql> slave start;
mysql> show slave status\G;
閲完此文,您的感想如何?
  • 有用

    6

  • 沒用

    1

  • 開心

    2

  • 憤怒

    1

  • 可憐

    1

1.如文章侵犯了您的版權,請發郵件通知本站,該文章將在24小時内刪除;
2.本站標注原創的文章,轉發時煩請注明來源;
3.交流群: PHP+JS聊天群

相關課文
  • 讓Mysql查詢後直接返回json字符串的方法

  • postgresql的pg_dump備份簡單方法

  • 使用sql語句在MySQL庫中去掉字段左邊、右邊指定字符串

  • 避免mysql全表掃描等影響性能的寫法槼則

我要說說
網上賓友點評
1 樓 IP 61.149.222.101 的嘉賓 说道 : 1697916655
对MYSQL真是无爱,好好的搞mongodb不香吗??或者至少分个库也行,主从主从,老掉牙了。