1. Glosar/

Binary log

binlog

Binary log-ul (sau binlog) este un registru secvențial în format binar în care MySQL scrie toate evenimentele care modifică datele: INSERT, UPDATE, DELETE și operațiuni DDL. Fișierele sunt numerotate progresiv (mysql-bin.000001, mysql-bin.000002, etc.) și gestionate printr-un fișier index.

Cum funcționează #

De la MySQL 8.0, binary log-ul este activat implicit prin parametrul log_bin. MySQL creează un nou fișier binlog când serverul pornește, când fișierul curent atinge max_binlog_size, sau când se execută FLUSH BINARY LOGS. Suportă trei formate de înregistrare: STATEMENT (înregistrează instrucțiunile SQL), ROW (înregistrează modificările la nivel de rând) și MIXED (alegere automată).

La ce folosește #

Binary log-ul are două funcții fundamentale:

  • Replicare: într-o arhitectură master-slave, slave-ul citește binlog-urile master-ului pentru a replica aceleași operațiuni
  • Point-in-time recovery: după restaurarea unui backup, binlog-urile permit reaplicarea modificărilor până la un moment precis

Când se folosește #

Binary log-ul este activ implicit pe orice instalare MySQL 8.0+. Gestionarea activă (retenție, purge, monitorizarea spațiului) este necesară pentru a preveni ca fișierele acumulate să umple discul. Comanda PURGE BINARY LOGS este modul corect de a elimina fișierele obsolete.