После обновления Mysql 5.5 до Percona 5.7 приложение движется очень медленно.Я не могу оптимизировать запрос, потому что он скомпилирован с приложением. Единственное, что я могу сделать, - это оптимизировать сервер MySQL (или конфигурацию сервера)
Я должен упомянуть, что вижу какой-то запрос, который возвращает многоданные (70M результата) Data dir находится на SSD.У меня 32 ГБ ОЗУ, но я выделяю 20 для Mysql (60%, потому что у нас есть и другие небольшие сервисы)
Я замечаю небольшое улучшение, если активирую кэш (это будет устаревшим)
Ниже приведен мой конфиг
ПОКАЗАТЬ ГЛОБАЛЬНЫЙ СТАТУС результат здесь
Кто-нибудь есть идеи, что улучшить MySQL конфигурации или сервера для повышения производительности?Я поставил SQL с объяснением в качестве примера.Он возвращает 672 строки данных, но занимает 30 секунд (29 остается в «Отправке данных»).
explain select l.idCodeLocation as idLocation, l.txLocation as name, l.radius as radius, l.amLat as lat, l.amLong as lng, g.isin as isin, g.isout as isout, g.onval as onval, m.isGeofenceIn as isGeofenceIn, m.geofenceInTime as geofenceInTime, m.isGeofenceOn as isGeofenceOn, v.idVeh as idveh, v.idPlateVeh as plate, v.idClient as client from sat_geofence g left join sat_clientLocation as l on (g.idLocation=l.idCodeLocation) join sat_geofence_vehicle_mtm as m on (g.idLocation=m.idLocation) join sat_vehicle as v on (m.idVeh=v.idVeh);
+----+-------------+-------+------------+--------+---------------+---------+---------+-------------------+--------+----------+----------------------------------------------------+
| id | select_type | table | partitions | type | possible_keys | key | key_len | ref | rows | filtered | Extra |
+----+-------------+-------+------------+--------+---------------+---------+---------+-------------------+--------+----------+----------------------------------------------------+
| 1 | SIMPLE | g | NULL | ALL | idx | NULL | NULL | NULL | 38 | 100.00 | NULL |
| 1 | SIMPLE | m | NULL | ref | idx | idx | 768 | Stdb.g.idLocation | 5 | 100.00 | Using index condition |
| 1 | SIMPLE | v | NULL | eq_ref | PRIMARY | PRIMARY | 3 | Stdb.m.idVeh | 1 | 100.00 | Using where |
| 1 | SIMPLE | l | NULL | ALL | NULL | NULL | NULL | NULL | 116952 | 100.00 | Using where; Using join buffer (Block Nested Loop) |
+----+-------------+-------+------------+--------+---------------+---------+---------+-------------------+--------+----------+----------------------------------------------------+
структура таблиц, которую я здесь разместил: https://gist.github.com/costyoancea/deee560f9c94aa2463162d7ce0556392
Спасибо, Costi