~/talk

The Invisible Charset That Silently Breaks MySQL Replication

Talkat Percona Live 2026 Bay Area · 2026-05-27..05-29· [databases, web-platform]
links:none on file
slides:none on file

Upgrading from MySQL 5.7 to 8.0 breaks replication because a newer JDBC connector maps “utf8” to utf8mb4_0900 (id 255), which MySQL 5.7 rejects, causing replication to fail at the simple statement BEGIN with error code 22. Attempts to force server and ProxySQL defaults fail; removing the client-side character set (leaving only the collation) stops the connector from advertising 255 so binlog entries map to id 33 (utf8mb3) and replicas resume. Rollback plan validated by monitoring replicas for two to four weeks.

AI-written summary · about

  1. 0:00MySQL replication charset issue
  2. 1:55Replication failure error 22
  3. 3:04UTF8MB4 charset mismatch
  4. 5:16Java connector charset override
  5. 7:26Dropping charset encoding
  6. 8:10Lessons from incident
  7. 9:34Healthy replication post-upgrade
  8. 9:59Q&A testing rollback
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.