Ми використовуємо cookie-файли
Для оптимізації роботи нашого сайту ми використовуємо cookie-файли. Продовжуючи використовувати сайт, Ви погоджуєтеся з використанням cookie-файлів.
Новий дизайн
Панель керування
  • Русский
  • Українська
  • English
  • UAH
  • USD
  • RUB
  • EUR
  • 0-800-307-307 Гаряча лінія
  • +38 (044) 392-74-33 Київ
  • +38 (057) 728-39-00 Харків
  • +38 (056) 794-38-31 Дніпро
  • +38 (032) 229-58-93 Львів
  • +38 (048) 738-57-70 Одеса
  • +38(093) 170-15-42  Life
  • +38 (067) 400-88-44 Київстар
  • +1(888)393-24-51  USA, Toll free
  • +44(131)507-01-14  Great Britain
  • +7 (499) 348-28-61 Москва

2.7.15. Зміна типу сховища

Конвертації типу сховища в таблицях MySQL, наприклад з MyISAM в InnoDB, можна зробити наступними способами:
Щоб змінити тип сховища окремих таблиць, підключіться до бази даних за допомогою phpMyAdmin або будь-якого іншого MySQL-клієнта і для потрібних таблиць виконайте SQL-запит виду:
ALTER TABLE table_name ENGINE=InnoDB;

Де замість table_name вкажіть потрібну таблицю, а замість InnoDB - потрібний тип движка сховища.

Щоб змінити тип сховища для всіх таблиць в базі даних, скористайтеся консольної програмою mysql (Для її використання потрібно підключитися по SSH до сервера хостингу). Для проведення конвертації всіх таблиць в InnoDB виконайте:
for n in `mysql -h хост -u логін -pПАРОЛЬ ім'я_БД -B -N -e "show tables;"`;do mysql -h хост -u логін -pПАРОЛЬ ім'я_БД -B -N -e "ALTER TABLE $n ENGINE=innodb;";done

У зазначеній команді потрібно вказати дані для підключення до бази даних:

  • хост - сервер баз даних.
  • логін - ім'я користувача бази даних.
  • ПАРОЛЬ - пароль користувача бази даних.
  • ім'я_БД - назва бази даних.
  • innodb - тип сховища.

Важливо! Всі дані, крім типу сховища, в команді потрібно змінити двічі. При виконанні команди висновок може виглядати так:

mysql: [Warning] Using a password on the command line interface can be insecure.

Такого повідомлення не варто лякатися, повідомлення про втрату чинності лише вказує на те, що використання пароля в команді небезпечно. Якщо інших даних немає, то команда виконалася коректно.