Модераторы: skyboy
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> тормозит запрос. что в нем не так? 
:(
    Опции темы
MOP
  Дата 4.12.2006, 21:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 28.8.2005

Репутация: нет
Всего: нет



сегодня пришло письмо от хостера (http://freehost.com.ua)

Цитата

Здравствуйте!

Пожалуйста пересмотрите запросы к базе данных на своем сайте и ее
структуру. Они отрабатываются достаточно медленно. Вот пример запросов:

rolaboratory_a  erolaboratory_content   37      Locked  SELECT DISTINCT
DAYOFMONTH(date) as tmp FROM qn_Stories WHERE date >= '2006-12-1' && date <
'2006-13-1' && checked = "true"     1105213
erolaboratory_a erolaboratory_content   51      Locked  SELECT * FROM
`qn_Stories` WHERE id='4925' LIMIT 1      1108336 
erolaboratory_a erolaboratory_content   73      Locked  SELECT COUNT(s.id) as
count FROM `qn_Stories` as s, qn_Story_topics as st WHERE s.date <= NOW() AND
s.checked='true' AND s.id = st.story_id AND st.topic_id = '7'       1107850 
erolaboratory_a erolaboratory_content   74      Locked  SELECT DISTINCT
DAYOFMONTH(date) as tmp FROM qn_Stories WHERE date >= '2006-12-1' && date <
'2006-13-1' && checked = "true"     1103387 
erolaboratory_a erolaboratory_content   75      Locked  SELECT DISTINCT
DAYOFMONTH(date) as tmp FROM qn_Stories WHERE date >= '2006-12-1' && date <
'2006-13-1' && checked = "true"     1107076 
erolaboratory_a erolaboratory_content   75      Locked  SELECT LENGTH(text) as
len FROM `qn_Stories` WHERE id='454'     1105917 
erolaboratory_a erolaboratory_content   75      Locked  UPDATE qn_Stories SET
views=views+1 WHERE id='708'      1107300 
erolaboratory_a erolaboratory_content   75      Locked  UPDATE qn_Stories SET
views=views+1 WHERE id='7367'     1107131 
erolaboratory_a erolaboratory_content   75      Locked  UPDATE qn_Stories SET
views=views+1 WHERE id='7433'

Приятной работы!

-- 
С уважением,
 Евгений Шерман                          mailto:[email protected]
 FREEhost.com.ua
 ICQ: 294335977
 (044) 451-53-42


Я конечно не супер професионал... но мне просто интересно... как запрос
Код

SELECT * FROM `qn_Stories` WHERE id='4925' LIMIT 1


Может выполняться больше минуты?
id - первичный ключ.

Если у кого-то есть мысли, что не так, подскажите пожалуйста, что делать. Что надо менять... буду благодарен за развернутый ответ...
PM MAIL WWW ICQ MSN   Вверх
muzer
Дата 4.12.2006, 22:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 387
Регистрация: 31.8.2006

Репутация: 30
Всего: 31



Пошлите хостера в...маны..
Там у всех запросов написан статус LOCKED, это означает что они не выполняются (соответственно и сервер не грузят), а ждут пока будет разлочена какая-то из таблиц, необходимых для выполнения запроса. Чтобы определить какой запрос долго висит, надо бы видеть show processlist по всем запросам, а не по залоченным.

LOCKED бывает, например, если:
1. какой-то процесс явно залочил таблицу командой LOCK TABLE
2. какой-то процесс пишет или меняет данные в таблице
PM WWW   Вверх
MOP
Дата 4.12.2006, 22:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 28.8.2005

Репутация: нет
Всего: нет



Цитата(muzer @  4.12.2006,  21:05 Найти цитируемый пост)
ой-то процесс пишет или меня


спасибо тебе за ответ!

Может еще кто-то выскажется? если согласны с предидущим постом, просто напишите.... плз
PM MAIL WWW ICQ MSN   Вверх
Bulat
Дата 5.12.2006, 08:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


татарский Нео
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 22.3.2006
Где: Альметьевск

Репутация: нет
Всего: 57



Цитата(MOP @  4.12.2006,  22:09 Найти цитируемый пост)
Может еще кто-то выскажется? если согласны с предидущим постом, просто напишите.... плз 

по тому что есть, пока сказать что-то более сложновато smile 


--------------------
менеджер по кодеврайтингу  smile 
PM MAIL WWW   Вверх
Vaulter
Дата 5.12.2006, 15:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1724
Регистрация: 30.12.2002
Где: бункер

Репутация: нет
Всего: 22



таблицы myISAM?
менять на InnoDB


--------------------
PM MAIL WWW ICQ   Вверх
muzer
Дата 6.12.2006, 14:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 387
Регистрация: 31.8.2006

Репутация: 30
Всего: 31



Цитата(Vaulter @  5.12.2006,  16:20 Найти цитируемый пост)
менять на InnoDB

Ага, чтобы те апдейты и инсерты, которые мы так и не увидели, ещё больше тормозили smile
Вы когда советуете хотя б сообщайте о минусах того, что советуете.

Понятно же, что сервер хостера напрягается не от этих селектов, а от того, кто их залочил. На InnoDB эти селекты быстренько проскочат, а проблема останется)

Добавлено @ 14:40 
MOP, кстати, а покажите структуру таблицы..
какой тип у поля date и какой тип у поля checked? Там в селекте вижу checked = "true", уж не варчаром ли вы битовое поле храните? smile
PM WWW   Вверх
Vaulter
Дата 6.12.2006, 14:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1724
Регистрация: 30.12.2002
Где: бункер

Репутация: нет
Всего: 22



muzer, так скорее всего проблема как в том, что таблицы залочены другим запросом SELECT 
при InnoDB такого не будет - проблемы не будет.
на загруженных сайтах SELECTы - это 98% запросов к серверу когда как Update и Insert остальное.
где Ваша логика?


--------------------
PM MAIL WWW ICQ   Вверх
MOP
Дата 9.12.2006, 02:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 28.8.2005

Репутация: нет
Всего: нет



Сильно много извиняюсь за задержку ))

вот логика:

Код

CREATE TABLE `qn_stories` (
  `id` int(10) unsigned NOT NULL auto_increment,
  `title` varchar(255) collate utf8_unicode_ci NOT NULL default '***',
  `review` text collate utf8_unicode_ci,
  `text` text collate utf8_unicode_ci,
  `date` date NOT NULL default '0000-00-00',
  `views` int(11) NOT NULL default '0',
  `rank` double NOT NULL default '0',
  `marks` int(11) NOT NULL default '0',
  `author_user_id` int(11) default NULL,
  `author_name` varchar(255) collate utf8_unicode_ci default NULL,
  `checked` enum('true','false') collate utf8_unicode_ci NOT NULL default 'false',
  `text_plugin` varchar(255) collate utf8_unicode_ci NOT NULL default 'text',
  `review_plugin` varchar(255) collate utf8_unicode_ci NOT NULL default 'text',
  `allow_rss` enum('Y','N') collate utf8_unicode_ci NOT NULL default 'Y',
  `template` varchar(50) collate utf8_unicode_ci default NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
 

всем участникам большое спасибо )) не останавливайтесь, продолжайте обсуждать ))

(Действительно у меня MyISAM в таблице... Щас подробно прочитаю мануал...)

оффтоп: просто поражает отношение хостера... ему деньги платят, а он спама пришлет, сайты отключит, и умным себя считает...

Это сообщение отредактировал(а) MOP - 9.12.2006, 02:29
PM MAIL WWW ICQ MSN   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MySQL | Следующая тема »


 




[ Время генерации скрипта: 0.0750 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.