Задать вопрос
@litvinov-an

MySQL. Почему медленно выполняется update?

В таблице 150 записей. Запросы на обновление значения выполняются порядка секунды. При загрузке страницы необходимо выполнить 9 таких запросов.
Alg_m1g_NZM.jpg
MySQL крутится на отдельном сервере, 4 гига оперативы. В чем может быть проблема? Не представляю в какую сторону копать.
В таблице проставлены индексы.

Мои личные предположения - что-то не так в конфиге MySQL. Его прилагаю.
[server]
[mysqld]
max_connection = 350
max_allowed_packet = 16M
key_buffer = 16M
innodb_buffer_pool_size = 2048M
innodb_file_per_table = 1
innodb_flush_method = O_DIRECT
innodb_flush_log_at_trx_commit = 2
query_cache_size = 16M
[galera]
[embedded]
[mariadb]
[mariadb-10.1]

PhpMyAdmina на сервере нет.
  • Вопрос задан
  • 1288 просмотров
Подписаться 2 Средний Комментировать
Пригласить эксперта
Ответы на вопрос 2
@hx510b
"Я знаю, что ничего не знаю"
1. Убедиться, что для id есть индекс.
2. Возможно для поля views очень много индексов и они долго обновляются.
3. Слишком широкая таблица tbl_banner
3. Проверить нагрузку на сервере с БД - LA, нагрузка CPU, iowait - чем меньше значение - тем лучше.
LA<5..10, cpu < 100, iowait < 10...20
4. Жесткий диск работает "медленно" или неисправен.
5. Возможно, физический размер базы слишком велик и не помещается в буфер памяти. Это можно увидеть с помощью mysqltuner.pl
6. Возможно, что конфиг mysql не применяется - надо в этом убедиться.
Это типичные причины. Дальше надо смотреть конкретно.
Ответ написан
Комментировать
inoise
@inoise
Solution Architect, AWS Certified, Serverless
Скорее всего тормозит подзапрос. Используйте explain для анализа выборки
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы