|
|
|
| CPU под 98% грузит mysqld на Linuxe (из команды top), помогите разобраться в чем причина :( | |
|
|
|
|
|
|
|
для: SIDPR
(17.07.2008 в 11:12)
| |
mysql> status
--------------
mysql Ver 11.18 Distrib 3.23.58, for pc-linux (i686)
Connection id: 53411
Current database:
Current user: root@localhost
Current pager: stdout
Using outfile: ''
Server version: 3.23.58
Protocol version: 10
Connection: Localhost via UNIX socket
Client characterset: latin1
Server characterset: cp1251
UNIX socket: /tmp/z-www.sock
Uptime: 1 day 55 min 36 sec
Threads: 1 Questions: 6458917 Slow queries: 1451 Opens: 10797 Flush tables: 1 Open tables: 64 Queries per second avg: 71.977
|
Это нормально ? | |
|
|
|
|
|
|
|
для: sidPR
(17.07.2008 в 11:26)
| | MySQL жрет очень много процессора. Посмотрите журнал медленных запросов, если он не включен, включите - что там? | |
|
|
|
|
|
|
|
для: cheops
(17.07.2008 в 13:54)
| | а что это за журнал и как его включать ? | |
|
|
|
|
|
|
|
для: sidPR
(17.07.2008 в 17:15)
| | >Slow queries: 1451
Обнаружено 1451 медленных запросов (т.е. выполнение которых заняло больше 2 секунд, если настройки не меняли) - это кандидаты на потребление процессора - т.е. вместо того, чтобы за доли секунды отработать и исчезнуть, запрос несколько секунд мурыжил процесс mysqld, не давая развернуться в полную силу другим процессам. Правда могут быть накладки, когда забивается очередь запросов и в медленные начинают сыпаться все подряд. Однако, у вас их достаточно мало, поэтому можно попытаться проанализировать и найти проблемные запросы (может где-то индекса не хватает).
Включить журнал медленных запросов можно разместив директиву
log-slow-queries=slow.log]
| в секцию [mysqld] конфигурационного файла my.ini. slow.log - имя журнала, который появится в каталоге данных после перезагрузки. | |
|
|
|
|
|
|
|
для: cheops
(17.07.2008 в 20:31)
| | я пытаюсь перезагрузить сервис и он выдает такую ошибку :
[root@z ~]# service mysql restart
usage: /etc/init.d/mysql start|stop
[root@z ~]# service mysqld restart
Stopping MySQL: [FAILED]
Timeout error occurred trying to start MySQL Daemon.
Starting MySQL: [FAILED]
[root@z ~]#
[root@z ~]#
|
с чем это связанно не могу понять :( | |
|
|
|
|
|
|
|
для: sidPR
(18.07.2008 в 12:38)
| | А без директивы стартует? | |
|
|
|
|
1 Кб |
|
|
для: cheops
(18.07.2008 в 13:58)
| | Все вроде разобрался, обычный лог писатся начало а Slow почемуто не хочет :(
конфиг вложил | |
|
|
|
|
|
|
|
для: sidPR
(18.07.2008 в 14:16)
| | log-slow-queries = /var/log/slowquery.log не создается и все :( не пойму в чем причина | |
|
|
|
|
|
|
|
для: sidPR
(18.07.2008 в 15:09)
| | Дело походу в правах было... создал файлик такой там и поставил 777 | |
|
|
|
|
|
|
|
для: sidPR
(18.07.2008 в 15:33)
| | в основном такой запрос попадает в лог ...
# Time: 080718 15:33:40
# User@Host: z-sql[z-sql] @ localhost []
# Query_time: 6 Lock_time: 0 Rows_sent: 20 Rows_examined: 83007
SELECT * FROM NEWS n, NPLACEMENT np
WHERE n.ID_NEWS = np.ID_NEWS and ID_NEWS_PLACE = 5 and HEADER not like '%Аналитическая служба%' and HEADER not like '%\_\_\_\_%' and HEADER not like '%ВЧЕРАШНИЙ%'
ORDER BY NDATETIME DESC
limit 20;
|
| |
|
|
|
|
|
|
|
для: sidPR
(18.07.2008 в 15:38)
| | Так может убрать его?
Запрос-то ведь и вправду страшненький... | |
|
|
|
|
|
|
|
для: Trianon
(18.07.2008 в 15:48)
| | да ябы с радостью все запросы поудалял бы эти кривые :) но не могу... скоро на новое двигло переходить придется както продиржатся на этом ... вот ищю пути разгрузки малой кровью | |
|
|
|
|
|
|
|
для: sidPR
(18.07.2008 в 15:38)
| | А никак пока нельзя ввести дополнительное поле ENUM, и пометить все записи у которых поле HEADER содержит "Аналитическая служба", "ВЧЕРАШНИЙ" и "____" - будет сильно попроще, 6 секунд - это действительно много. | |
|
|
|