Categories
Internet, Unix en security

Standaard InnoDB in MySQL

MyISAM is jarenlang de standaard geweest in MySQL als storage-engine, maar al geruime tijd is er ondersteuning voor InnoDB welke meer is geschikt is voor de hedendaagse wereld. Helaas zijn veel applicaties nog niet bewust van deze optie en maken tabellen aan zonder te bepalen welke storage-engine nodig is. Zeker op een hostingplatform kan dit op de lange termijn problemen opleveren, maar er zijn opties voor om veel applicaties bijna ongemerkt om te zetten naar InnoDB.

Door het plaatsen van de optie default-storage-engine in my.conf zoals hieronder dan zullen nieuwe tabellen standaard worden aangemaakt met de InnoDB storage-engine ipv MyISAM.

[mysqld]
default-storage-engine=InnoDB

Bestaande tabellen worden niet geraakt door de aanpassing my.conf, maar met het volgende SQL-statement het is mogelijk om een tabel om te zetten naar InnoDB.

alter table <name> engine=InnoDB;

Het is nu alleen nog wachten op de Falcon-engine zodat MySQL in de buurt komt van PostgreSQL zodat taken zoals een database-engine voor SpamAssassin een goede optie wordt bij veel transacties.

By Hans Spaans

Unix & security consultant with a passion for Linux, Solaris, PostgreSQL, Perl and network services, but also a strong believer in open and free source, standards and content.