Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: mysqld грузит CPU
 
 автор: SIDPR   (17.07.2008 в 11:12)   письмо автору
 
 

CPU под 98% грузит mysqld на Linuxe (из команды top), помогите разобраться в чем причина :(

   
 
 автор: sidPR   (17.07.2008 в 11:26)   письмо автору
 
   для: 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


Это нормально ?

   
 
 автор: cheops   (17.07.2008 в 13:54)   письмо автору
 
   для: sidPR   (17.07.2008 в 11:26)
 

MySQL жрет очень много процессора. Посмотрите журнал медленных запросов, если он не включен, включите - что там?

   
 
 автор: sidPR   (17.07.2008 в 17:15)   письмо автору
 
   для: cheops   (17.07.2008 в 13:54)
 

а что это за журнал и как его включать ?

   
 
 автор: cheops   (17.07.2008 в 20:31)   письмо автору
 
   для: sidPR   (17.07.2008 в 17:15)
 

>Slow queries: 1451
Обнаружено 1451 медленных запросов (т.е. выполнение которых заняло больше 2 секунд, если настройки не меняли) - это кандидаты на потребление процессора - т.е. вместо того, чтобы за доли секунды отработать и исчезнуть, запрос несколько секунд мурыжил процесс mysqld, не давая развернуться в полную силу другим процессам. Правда могут быть накладки, когда забивается очередь запросов и в медленные начинают сыпаться все подряд. Однако, у вас их достаточно мало, поэтому можно попытаться проанализировать и найти проблемные запросы (может где-то индекса не хватает).
Включить журнал медленных запросов можно разместив директиву
log-slow-queries=slow.log]
в секцию [mysqld] конфигурационного файла my.ini. slow.log - имя журнала, который появится в каталоге данных после перезагрузки.

   
 
 автор: sidPR   (18.07.2008 в 12:38)   письмо автору
 
   для: 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 ~]#


с чем это связанно не могу понять :(

   
 
 автор: cheops   (18.07.2008 в 13:58)   письмо автору
 
   для: sidPR   (18.07.2008 в 12:38)
 

А без директивы стартует?

   
 
 автор: sidPR   (18.07.2008 в 14:16)   письмо автору
1 Кб
 
   для: cheops   (18.07.2008 в 13:58)
 

Все вроде разобрался, обычный лог писатся начало а Slow почемуто не хочет :(

конфиг вложил

   
 
 автор: sidPR   (18.07.2008 в 15:09)   письмо автору
 
   для: sidPR   (18.07.2008 в 14:16)
 

log-slow-queries = /var/log/slowquery.log не создается и все :( не пойму в чем причина

   
 
 автор: sidPR   (18.07.2008 в 15:33)   письмо автору
 
   для: sidPR   (18.07.2008 в 15:09)
 

Дело походу в правах было... создал файлик такой там и поставил 777

   
 
 автор: sidPR   (18.07.2008 в 15:38)   письмо автору
 
   для: 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;

   
 
 автор: Trianon   (18.07.2008 в 15:48)   письмо автору
 
   для: sidPR   (18.07.2008 в 15:38)
 

Так может убрать его?
Запрос-то ведь и вправду страшненький...

   
 
 автор: sidPR   (18.07.2008 в 15:55)   письмо автору
 
   для: Trianon   (18.07.2008 в 15:48)
 

да ябы с радостью все запросы поудалял бы эти кривые :) но не могу... скоро на новое двигло переходить придется както продиржатся на этом ... вот ищю пути разгрузки малой кровью

   
 
 автор: cheops   (18.07.2008 в 16:05)   письмо автору
 
   для: sidPR   (18.07.2008 в 15:38)
 

А никак пока нельзя ввести дополнительное поле ENUM, и пометить все записи у которых поле HEADER содержит "Аналитическая служба", "ВЧЕРАШНИЙ" и "____" - будет сильно попроще, 6 секунд - это действительно много.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования