MySQL TRUNCATE, hol a hely?
jan 24
Az imént szórtam ki 36 millió rekordot az egyik log táblánkból, felszabadítva ezzel 34GB tárhelyet a szerveren. Illetve csak felszabadítottam volna, mert a táblához tartozó .idb fájl mérete a tisztogatás után nem változott.
Rövid guglizás után meglett a válasz: a TRUNCATE csak a MySQL felé tünteti el a rekordokat, rendszer szinten nem szabadítja fel a korábban allokált helyet. A probléma szerencsére egyszerűen orvosolható egy tábla optimalizálással:
OPTIMIZE TABLE tablename;
És máris ott figyel több tíz gigányi szabad terület a diszken.
A bejegyzés trackback címe:
Kommentek:
A hozzászólások a vonatkozó jogszabályok értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a Felhasználási feltételekben és az adatvédelmi tájékoztatóban.