- Как определить тип базы данных mysql: будь то InnoDB или MyISAM?
- Как преобразовать MyISAM в InnoDB или наоборот?
Как определить тип базы данных mysql: будь то InnoDB или MyISAM?
Ответ 1
Чтобы определить механизм хранения, используемый таблицей, вы можете использовать show table status
. Поле Engine
в результатах покажет механизм базы данных для таблицы. В качестве альтернативы вы можете выбрать поле Engine
из information_schema.tables
:
select engine
from information_schema.tables
where table_schema = 'schema_name'
and table_name = 'table_name'
Вы можете переключаться между системами хранения, используя alter table
:
alter table the_table engine = InnoDB;
Где, конечно же, вы можете указать любой доступный механизм хранения.
Ответ 2
Выберите интересующую базу данных и запустите show table status;
Ответ 3
SHOW TABLE STATUS FROM `database`;
будет перечислять все для всех таблиц, начиная с того, являются ли они MyISAM или InnoDB. если вы хотите перечислить только данные в отношении 1 таблицы, можно использовать синтаксис ниже *:
SHOW TABLE STATUS FROM `database` LIKE 'table';
чтобы изменить движок таблицы:
ALTER TABLE `table` ENGINE=InnoDB;
* обратите внимание на GRAVE ACCENT ( "backtick" ) для имени базы данных и имени таблицы и SINGLE QUOTE (') для строки сравнения (часть имени таблицы) после LIKE.
`!= '
Ответ 4
Что касается преобразования myIsam в Innodb
http://dev.mysql.com/doc/refman/5.0/en/converting-tables-to-innodb.html
Ответ 5
Как определить тип базы данных mysql: будь то InnoDB или MyISAM?