Здравствуйте! Как оптимизировать базу данных( таблицу)? Мне нужно оптимизировать две таблицы,но я не знаю,что именно там не так,и как это делается - объясните пожалуйста.
Боюсь при такой постановке вопроса никто не поможет... Код (Text): mysqlcheck -u root -p --optimize DB_NAME TB_NAME1 TB_NAME2
Код (Text): function OptimizeAllTables() { $tables = mysql_query ('SHOW TABLES'); //get all the tables while ($table = mysql_fetch_array ($tables)) mysql_query ('OPTIMIZE TABLE ' . $table[0]); //optimize them } Такой кодик можно? как лучше сделать,чтобы каждый раз оптимизация шла или раз в час?
Можно создать триггер в БД с командой , который будет настроен на ежечасное выполнение. P.S.: а можно на событие внесения данных в одну из таблиц - только это убьет сервер.
PhpMyAdmin? Или командная строка? Код (PHP): CREATE DEFINER = `root`@`localhost` EVENT `hour` ON SCHEDULE EVERY1 HOUR STARTS '2015-08-03 00:00:00'ENDS '2015-08-27 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO OPTIMIZE TABLE Test Только я ошибся - не триггер, а обработчик события В PMA вверху справа - "ЕЩЁ" -> "События"
Этот код для командной строки, а если есть PMA - можно пару кнопок нажать... (Обновил пост - смотрите выше)