Схвалено найкращими українськими програмістами
У MySQL версії 3.23.6 можна було вибирати з трьох основних форматів таблиць (ISAM, HEAP та MyISAM). Нові версії MySQL можуть підтримувати додаткові типи таблиць ( InnoDB або BDB ) - залежно від варіанта установки.
Під час створення нової таблиці можна вказати MySQL, який тип таблиці для неї використовувати. Для таблиці та визначень шпальт MySQL завжди створює файл `.frm'. Індекс та дані зберігаються в інших файлах (їх розширення залежить від типу таблиці).
Зверніть увагу: якщо необхідно використовувати таблиці InnoDB, при запуску слід вказати параметр innodb_data_file_path. See section 7.5.2 Параметри запуску InnoDB.
Перетворювати таблиці з одного типу на інший можна за допомогою оператора ALTER TABLE . See section 6.5.4 Синтаксис оператора ALTER TABLE.
MySQL підтримує два різних типи таблиць: транзакційні (InnoDB і BDB) і без підтримки транзакцій (HEAP, ISAM, MERGE і MyISAM).
Переваги трансакційних таблиць (Transaction-safe tables, TST):
- Надійність. Навіть якщо відбудеться збій у роботі MySQL або виникнуть проблеми з обладнанням, свої дані ви зможете відновити – або методом автоматичного відновлення, або за допомогою резервної копії та журналу транзакцій.
- Можна поєднувати кілька операторів та приймати всі ці оператори однією командою COMMIT.
- Можна запустити команду ROLLBACK , щоб скасувати внесені зміни (якщо робота не виконується в режимі автоматичної фіксації).
- Якщо збій під час оновлення, всі зміни будуть відновлені (у нетранзакційних таблицях всі внесені зміни не можуть бути скасовані).
Переваги таблиць без безпечних транзакцій(non-transaction-safe tables, NTST):
- Працювати з ними набагато швидше, тому що не виконуються додаткові транзакції.
- Для них потрібно менше дискового простору, оскільки не використовуються додаткові транзакції.
- Для оновлень використовується менше пам'яті.
В операторах можна поєднувати таблиці TST та NTST, щоб взяти найкраще від кожного типу.