[devel] Mysqld CPU usage at www.sisyphus.ru

Grigory Batalov bga at altlinux.org
Tue Sep 1 14:49:53 UTC 2009


On Tue, 1 Sep 2009 17:40:18 +0400
Alex Gorbachenko wrote:

> >> innodb ? если да, то OPTIMIZE TABLE как давно делался ?
> >
> >Сделал сейчас, но что-то разницы не заметно.
> 
> тогда запрос и explain от него - в студию.

Вот такие запросы тормозят:

SELECT DISTINCT s.name, s.version, s.rel, m.packager, s.summary, s.repo
FROM srpm as s, maintainers as m, rpm as r WHERE  r.srpm = s.name AND
m.mail=s.packager AND ( s.name RLIKE 'unichrome'  OR  s.summary RLIKE
'unichrome'  OR  s.description RLIKE 'unichrome'  OR  r.namen RLIKE
'unichrome' ) AND s.repo='Sisyphus' AND r.repo='Sisyphus' ORDER BY 1
ASC LIMIT 0,20;

Может быть, заменить RLIKE на MATCH AGAINST ? Будет быстрее?

Таблицы невелики:

mysql> select count(*) from srpm;
+----------+
| count(*) |
+----------+
|    38240 | 
+----------+
1 row in set (0.00 sec)

mysql> select count(*) from rpm;
+----------+
| count(*) |
+----------+
|   109232 | 
+----------+
1 row in set (0.00 sec)

mysql> select count(*) from maintainers;
+----------+
| count(*) |
+----------+
|      250 | 
+----------+
1 row in set (0.01 sec)


More information about the Devel mailing list