1236: Got fatal error 1236 from master when reading data from binary log
MySQLNe demek?
Bir replika (slave/replica) sunucu, kaynağın (master/source) binary log'undan veri okurken ölümcül bir hata aldı ve replikasyon durdu. Replika, kaynağın binlog'undaki beklediği konumu bulamıyor.
Neden olur?
İhtiyaç duyulan binary log dosyaları kaynakta silinmiş (binlog_expire_logs_seconds — 8.0 öncesinde expire_logs_days, 8.4'te kaldırıldı — ya da PURGE BINARY LOGS ile); GTID boşluğu/uyumsuzluğu; kaynak çökmesi sonrası binlog konumunun bozulması; ya da replika çok geride kalıp artık var olmayan log'u istemesi. 'Could not find first log file name in binary log index file' tipik alt mesajdır.
Nasıl çözülür?
Replikasyon durumunu inceleyin: SHOW REPLICA STATUS\G (8.0.22+; daha eski sürümlerde SHOW SLAVE STATUS, 8.4'te eski sözdizimi kaldırıldı). Kaynaktaki mevcut binlog'ları görün: SHOW BINARY LOGS; Eksik log silinmişse replikayı yeni bir yedek/GTID konumundan yeniden kurmanız gerekir (mysqldump --source-data — 8.0.26 öncesinde --master-data, 8.0.26+'da deprecated takma ad — ya da CLONE eklentisi). Kaynakta binlog saklama süresini iş yüküne göre artırın; GTID kullanıyorsanız gtid boşluklarını doğrulayın.
Aynı motorda diğer kayıtlar
- 1049Unknown database 'name'
- 1364Field 'name' doesn't have a default value
- 1206The total number of locks exceeds the lock table size
- 1129Host 'host' is blocked because of many connection errors
- 1194Table 'name' is marked as crashed and should be repaired
- 1615Prepared statement needs to be re-prepared
- 1553Cannot drop index needed in a foreign key constraint