Промяна на стойността на променливата default_storage_engine
няма ефект върху съществуващите таблици. Всичко, което прави, е да създава нови таблици с машината, която сте посочили в тази променлива, когато не сте я посочили във вашия create table
изявление. Това е само стойност по подразбиране.
Също така имайте предвид, че трябва да правите разлика между global
и session
променливи стойности. За да имате наистина MyISAM по подразбиране, когато създавате нова таблица, а не само за текущата сесия, направете го по следния начин:
SET GLOBAL default_storage_engine=MYISAM;
Ако искате да запазите променливата на тази стойност дори след рестартиране на сървъра, трябва да поставите следния ред във вашия файл по подразбиране my.cnf
под секцията [mysqld]
default_storage_engine = MYISAM
За да конвертирате текущите си таблици в MyISAM, направете това за всяка таблица:
ALTER TABLE table_name ENGINE=MyISAM;
Но имайте предвид, че вашето ограничение за външен ключ вече няма да работи, тъй като MyISAM не го поддържа. То няма да се оплаква, просто ще го игнорира. Така че по-добре бъдете сигурни, че знаете какво правите :)