Elliot Stroud chockade arenan redan i den tredje minuten. Hans distansskott letade sig in bakom Samuel Brolin.
Kalmar arbetade sig in i matchen. I den 18:e minuten kom kvitteringen.
Aboubacar Keita nådde högst efter en hörna och nickade kraftfullt in 1–1.
I den 64:e minuten var Charles Sagoe Junior nära att ge Kalmar ledningen. Mjällby-målvakten Robin Wallinder räddade.
Fem minuter senare fick Sagoe Junior revansch. I den 69:e minuten skickade han in 2–1.
Hemmapubliken, närmare 6 000 åskådare, bidrog till en fantastisk inramning enligt tränaren Toni Koskela i Kalmar FF-podden efter matchen.
Segern kom efter att Mjällby roterat truppen på grund av sina europeiska matcher, något som diskuterades i Studio Allsvenskan inför matchen.
Tre poäng som håller Kalmar kvar i jakten på mittenskiktet i Allsvenskan.