Ik heb een mysql database van 22Gb met allemaal HTML erin. Graag wil ik deze comprimeren, om ruimte te besparen.
Daarvoor heb ik een PHP script geschreven die elke row ophaalt uit de database en een gzcompress() doet. Vervolgens wordt de data terug geschreven.
Vergelijk ik nu de 2 versies met elkaar, dan zie ik inderdaad dat de tabellen die al gecomprimeerd zijn minder data bevatten: LENGTH(veld) is kleiner voor elke row. Echter, als ik nu op het filesystem kijk en met ls -all de grootte van de (innodb) tabellen bekijk, dan zijn de gecomprimeerde tabellen groter dan de ongecomprimeerde tabellen.
Ik kan hier absoluut geen verklaring voor vinden. Beide tabellen hebben velden met type mediumtext. Dit heb ik ook met BLOB geprobeerd, maar dat geeft geen verschil.
Heeft iemand hier een verklaring voor, en zijn er misschien nog suggesties om die 22Gb wat kleiner te krijgen? Daarbij moet gezegd worden dat een read-only oplossing niet mogelijk is.
Daarvoor heb ik een PHP script geschreven die elke row ophaalt uit de database en een gzcompress() doet. Vervolgens wordt de data terug geschreven.
Vergelijk ik nu de 2 versies met elkaar, dan zie ik inderdaad dat de tabellen die al gecomprimeerd zijn minder data bevatten: LENGTH(veld) is kleiner voor elke row. Echter, als ik nu op het filesystem kijk en met ls -all de grootte van de (innodb) tabellen bekijk, dan zijn de gecomprimeerde tabellen groter dan de ongecomprimeerde tabellen.
Ik kan hier absoluut geen verklaring voor vinden. Beide tabellen hebben velden met type mediumtext. Dit heb ik ook met BLOB geprobeerd, maar dat geeft geen verschil.
Heeft iemand hier een verklaring voor, en zijn er misschien nog suggesties om die 22Gb wat kleiner te krijgen? Daarbij moet gezegd worden dat een read-only oplossing niet mogelijk is.
Ik blijf er iig vrij nuchter onder....