@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 на сервере нет.
  • Вопрос задан
  • 1170 просмотров
Пригласить эксперта
Ответы на вопрос 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 для анализа выборки
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы