0 Пользователей и 1 Гость просматривают эту тему.
  • 29 Ответов
  • 484 Просмотров
*

Wertos

  • Завсегдатай
  • 505
  • 21
J! 3.4.8 переезд и проблемы
« : 17.02.2016, 23:23:16 »
J!3.4.8
10.1.11-MariaDB - MariaDB Server
CentOS 7 x64
12Гб ОЗУ
120 SSD
История такова.
Задумал хостер сменить винт. Ну ради бога... Слил бэкапы, сохранил конфиги(mysql, nginx, etc...), винт заменили, установили систему как была. Поставил тот же сервер БД.
Заливаю бэкапы, конфиги, всё завелось без проблем кроме сайта.... Главная страница не открывается у сайта(сам сайт работает, кроме главной) Долго-долго грузит... Загрузки я так и не дождался....
На главной 2 модуля RokSprocket и при их отключении главная открывается отлично.

А с ними MySQL грузит 4 ядра на 100% !

Дамп БД приличный, 1Гб, InnoDB таблицы.
И вот что я заметил, был в /var/lib/mysql файл ibdata1, который на старом сервере был 1.5Гб, а сейчас он ~120Мб. И это единственное отличие от предыдущего варианта сервера.
И что я только не пробовал с бд вытворять, ничего не добился....! Может я как-то неправильно импортирую дамп, или первоначальная настройка MySQL сервера не такая... Повторюсь, конфиги со старого сервера, который отличается только размером винта.

Есть идеи ?

PS. Импорт делаю так >mysql dbname < dump.sql, импорт идёт очень долго но без ошибок.
« Последнее редактирование: 18.02.2016, 19:09:40 от Wertos »
*

voland

  • Профи
  • 9511
  • 422
  • Эта строка съедает место на вашем мониторе
Re: J! 3.4.8 переезд и проблемы
« Ответ #1 : 17.02.2016, 23:26:11 »
Включать дебаг надо для начала.
Проверить таблицы на целостность.
REPAIR вроде
*

Wertos

  • Завсегдатай
  • 505
  • 21
Re: J! 3.4.8 переезд и проблемы
« Ответ #2 : 17.02.2016, 23:30:28 »
Включать дебаг надо для начала.
Проверить таблицы на целостность.
REPAIR вроде
дебаг включен, а InnoDB не поддерживает REPAIN, OPTIMIZE и т.д.
*

voland

  • Профи
  • 9511
  • 422
  • Эта строка съедает место на вашем мониторе
*

Wertos

  • Завсегдатай
  • 505
  • 21
Re: J! 3.4.8 переезд и проблемы
« Ответ #4 : 17.02.2016, 23:43:54 »
Хм. Да
Но http://stackoverflow.com/questions/226172/how-do-i-repair-an-innodb-table
Минутку, я сейчас попробую...
И вот ещё вопрос. У меня #__content = ~1Gb и у неё я добавлял FULLTEXT индек к полям title, introtext, fulltext. А это как я понял штука насосная... Может быть из за этого ?
*

voland

  • Профи
  • 9511
  • 422
  • Эта строка съедает место на вашем мониторе
Re: J! 3.4.8 переезд и проблемы
« Ответ #5 : 17.02.2016, 23:44:33 »
Построение индекса? Да - может
*

Wertos

  • Завсегдатай
  • 505
  • 21
Re: J! 3.4.8 переезд и проблемы
« Ответ #6 : 18.02.2016, 00:05:35 »
Собственно всё заработало после того как я удалил fulltext индексы с j_content, потом сделал репайн по мануалу(на всякий случай).
Индексы сейчас пересоздал. Работает отлично, как и было.
Блин весь день убил на это дело... Про индексы забыл совсем :(
*

Wertos

  • Завсегдатай
  • 505
  • 21
RE: J! 3.4.8 переезд и проблемы
« Ответ #7 : 18.02.2016, 12:55:33 »
Собственно решено было всё до очистки кеша, очистил... Главная не работает. Индексы удалил опять, оптимизацию сделал. Безрезультатно (
*

Wertos

  • Завсегдатай
  • 505
  • 21
Re: J! 3.4.8 переезд и проблемы
« Ответ #8 : 18.02.2016, 19:10:33 »
Висит на этом запросе из модуля roksprocket
Код: sql
SET timestamp=1455810781;
SELECT a.id, a.title, a.alias, a.introtext, a.`fulltext`, a.catid, a.state, a.access, a.created, a.created_by, a.created_by_alias, a.modified, a.featured, a.language, a.hits, a.publish_up, a.publish_down, a.images, a.urls, a.language, a.metakey, a.metadesc, a.metadata,c.title AS category_title, c.alias AS category_alias,ua.name AS author_name,vl.title AS access_title
FROM j_content as a
LEFT JOIN j_categories AS c ON c.id = a.catid
LEFT JOIN j_users AS ua ON ua.id = a.created_by
LEFT JOIN j_viewlevels AS vl ON a.access = vl.id
LEFT OUTER JOIN (select rsi.provider_id, rsi.order from j_roksprocket_items as rsi where module_id = 424) rsi on a.id = rsi.provider_id
WHERE ((a.access IN(1,1,2,3,6) AND (a.state != -2)) AND a.catid IN (151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203))
GROUP BY id
ORDER BY IF(ISNULL(rsi.order),1,0),rsi.order,a.created DESC LIMIT 120;
*

Taatshi

  • Support Team
  • 4805
  • 453
  • Верстаем и немножко кодим. Обращайтесь ;)
Re: J! 3.4.8 переезд и проблемы
« Ответ #9 : 18.02.2016, 21:00:31 »
Удалите модуль, пересоздайте.
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3  /  ОТЗЫВЫ 
Минимальная ставка за платные услуги 1000 рэ Связь: telegram - Taatshi, почта - Taatshi на яндексе.
*

Wertos

  • Завсегдатай
  • 505
  • 21
Re: J! 3.4.8 переезд и проблемы
« Ответ #10 : 18.02.2016, 21:49:02 »
Удалите модуль, пересоздайте.
Пробовал, тоже самое... :( Опять сегодня день убил безрезультатно...
*

robert

  • Профи
  • 4078
  • 376
Re: J! 3.4.8 переезд и проблемы
« Ответ #11 : 18.02.2016, 22:28:53 »
Хм, SET timestamp? Похоже, они изначально уже знали об этом. А почему LIMIT 120? Что, если поставить меньше? Сразу скажу, что не знаю ничего об этих расширениях, пишу только то, что думаю об увиденном.
  • Не будь паразитом, сделай что-нибудь самостоятельно!
  • В личке и по Skype не даю советов.
*

Wertos

  • Завсегдатай
  • 505
  • 21
Re: J! 3.4.8 переезд и проблемы
« Ответ #12 : 18.02.2016, 22:42:19 »
Хм, SET timestamp? Похоже, они изначально уже знали об этом. А почему LIMIT 120? Что, если поставить меньше? Сразу скажу, что не знаю ничего об этих расширениях, пишу только то, что думаю об увиденном.
Если поставить меньше(10 например), то нормально работает !
Прикол в том, что отображаются только 40 ! Чтобы подгрузить ещё 40 нужно нажать кнопку, подгрузка на ajax(проверено) 120 это общее число подгружаемых материалов.
Дак вот я не пойму, если он уже выбрал 120, то зачем блин он AJAX запрос делает для подгрузки следующих 40, если они уже загружены !
*

dmitry_stas

  • Профи
  • 10037
  • 953
Re: J! 3.4.8 переезд и проблемы
« Ответ #13 : 18.02.2016, 22:43:16 »
Хм, SET timestamp? Похоже, они изначально уже знали об этом.
прикольные :) т.е. мало того, что запрос хз какой, так давайте его еще и из лога медленных запросов исключим чтобы хостер помучался над темой почему же SET timestamp вешает сервак :)
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

voland

  • Профи
  • 9511
  • 422
  • Эта строка съедает место на вашем мониторе
Re: J! 3.4.8 переезд и проблемы
« Ответ #14 : 18.02.2016, 22:45:58 »
Погодите, а
Цитировать
SET timestamp=1455810781
меняет время выполнения запроса?

И кто разработчик?
*

Wertos

  • Завсегдатай
  • 505
  • 21
Re: J! 3.4.8 переезд и проблемы
« Ответ #15 : 18.02.2016, 22:47:04 »
прикольные :) т.е. мало того, что запрос хз какой, так давайте его еще и из лога медленных запросов исключим чтобы хостер помучался над темой почему же SET timestamp вешает сервак :)
Это далеко не весь запрос ! Я столько JOIN'ов оттуда выпилил... А вот это
Код
AND a.catid IN (151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203)
это уже моё, т.к. в фильтре материалов, мне нужны только эти категории...

Но смысл то в том, что даже с кривыми, как вы говорите, запросами, на предыдущем сервере(хотя они зеркальны) всё летало отлично !
*

Wertos

  • Завсегдатай
  • 505
  • 21
Re: J! 3.4.8 переезд и проблемы
« Ответ #16 : 18.02.2016, 22:47:34 »
Погодите, аменяет время выполнения запроса?

И кто разработчик?
Rocket Theme
*

voland

  • Профи
  • 9511
  • 422
  • Эта строка съедает место на вашем мониторе
Re: J! 3.4.8 переезд и проблемы
« Ответ #17 : 18.02.2016, 22:58:25 »
мда, я был о них большего мнения
*

dmitry_stas

  • Профи
  • 10037
  • 953
Re: J! 3.4.8 переезд и проблемы
« Ответ #18 : 18.02.2016, 23:05:41 »
меняет время выполнения запроса?
ну я так понимаю это ради этого. хотя может я и ошибаюсь

P.S. там по сути наверное и решение указано я так понимаю - удалить SET timestamp
« Последнее редактирование: 18.02.2016, 23:09:44 от dmitry_stas »
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Wertos

  • Завсегдатай
  • 505
  • 21
Re: J! 3.4.8 переезд и проблемы
« Ответ #19 : 18.02.2016, 23:16:44 »
SET timestamp в коде не могу никак найти (
*

dmitry_stas

  • Профи
  • 10037
  • 953
Re: J! 3.4.8 переезд и проблемы
« Ответ #20 : 18.02.2016, 23:36:32 »
покажите исходный текст запроса
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Wertos

  • Завсегдатай
  • 505
  • 21
Re: J! 3.4.8 переезд и проблемы
« Ответ #21 : 18.02.2016, 23:38:08 »
Код: sql
LEFT OUTER JOIN (SELECT rsi.provider_id, rsi.ORDER FROM j_roksprocket_items AS rsi WHERE module_id = 424) rsi ON a.id = rsi.provider_id
Без этой строки работает нормально... Продолжаю тесты.
Запрос в отдельный файл засунут
*

Wertos

  • Завсегдатай
  • 505
  • 21
Re: J! 3.4.8 переезд и проблемы
« Ответ #22 : 18.02.2016, 23:40:04 »
покажите исходный текст запроса
Дык а там никак, он там в разных файлах, собирается по чуть-чуть... Вот часть его

Код: php
	protected function setBaseQuery()
{
$this->query->select('a.id, a.title, a.alias, a.introtext, a.`fulltext`, a.catid' . ', a.state, a.access, a.created, a.created_by, a.created_by_alias, a.modified, a.featured, a.language, a.hits' . ', a.publish_up, a.publish_down, a.images, a.urls, a.language, a.metakey, a.metadesc, a.metadata')->from('#__content as a');

$this->query->select('c.title AS category_title, c.alias AS category_alias');
$this->query->join('LEFT', '#__categories AS c ON c.id = a.catid');

$this->query->select('ua.name AS author_name');
$this->query->join('LEFT', '#__users AS ua ON ua.id = a.created_by');

// $this->query->select('um.name AS last_modified_by');
// $this->query->join('LEFT', '#__users AS um ON um.id = a.modified_by');

// $this->query->select('ROUND(v.rating_sum / v.rating_count, 0) AS rating, v.rating_count as rating_count');
// $this->query->join('LEFT', '#__content_rating AS v ON a.id = v.content_id');

$this->query->select('vl.title AS access_title');
$this->query->join('LEFT', '#__viewlevels AS vl ON a.access = vl.id');

// $this->query->select('l.title AS language_title');
// $this->query->join('LEFT', '#__languages AS l ON a.language = l.lang_code');
}
Закомментированные строки, это моё.
*

robert

  • Профи
  • 4078
  • 376
Re: J! 3.4.8 переезд и проблемы
« Ответ #23 : 18.02.2016, 23:51:04 »
Без этой строки работает нормально...
Вроде безобидный подзапрос. Что может быть в этой таблице j_roksprocket_items?
  • Не будь паразитом, сделай что-нибудь самостоятельно!
  • В личке и по Skype не даю советов.
*

dmitry_stas

  • Профи
  • 10037
  • 953
Re: J! 3.4.8 переезд и проблемы
« Ответ #24 : 18.02.2016, 23:54:00 »
ну так, чисто навскидку, если подзапрос отдельным запросом сначала сделать, а потом просто его результаты уже подставить в основной, что то поменяется? может там в принципе именно в нем затык, а не в основном запросе?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Wertos

  • Завсегдатай
  • 505
  • 21
Re: J! 3.4.8 переезд и проблемы
« Ответ #25 : 18.02.2016, 23:54:09 »
Вроде безобидный подзапрос. Что может быть в этой таблице j_roksprocket_items?

Строк там столько-же, сколько и материалов... Короче там то, как должны сортироваться материалы.
*

Wertos

  • Завсегдатай
  • 505
  • 21
Re: J! 3.4.8 переезд и проблемы
« Ответ #26 : 18.02.2016, 23:58:29 »
В настройках включил автоматическую сортировку (дата - убывание) и раскоментировал строки. Запрос стал таким
Код: sql
SELECT a.id, a.title, a.alias, a.introtext, a.`fulltext`, a.catid, a.state, a.access, a.created, a.created_by, a.created_by_alias, a.modified, a.featured, a.language, a.hits, a.publish_up, a.publish_down, a.images, a.urls, a.language, a.metakey, a.metadesc, a.metadata,c.title AS category_title, c.alias AS category_alias,ua.name AS author_name,vl.title AS access_title FROM #__content as a LEFT JOIN #__categories AS c ON c.id = a.catid LEFT JOIN #__users AS ua ON ua.id = a.created_by LEFT JOIN #__viewlevels AS vl ON a.access = vl.id WHERE ((a.access IN(1,1,2,3,6) AND (a.state != -2)) AND a.catid IN (151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203)) GROUP BY id ORDER BY a.created DESC LIMIT 120

Всё начало работать.... ДО удаления кеша J!... Удалил и опять пздц :(
*

Wertos

  • Завсегдатай
  • 505
  • 21
Re: J! 3.4.8 переезд и проблемы
« Ответ #27 : 19.02.2016, 00:09:28 »
Где-то я промахнулся с тюнингом MySQL ((
*

robert

  • Профи
  • 4078
  • 376
Re: J! 3.4.8 переезд и проблемы
« Ответ #28 : 19.02.2016, 00:17:08 »
Вот что я вижу:
-LIMIT 120 с учетом GROUP BY
-Длинный диапазон IN
-Множество JOIN
Но главный виновник, IMHO - п.1
  • Не будь паразитом, сделай что-нибудь самостоятельно!
  • В личке и по Skype не даю советов.
*

Wertos

  • Завсегдатай
  • 505
  • 21
Re: J! 3.4.8 переезд и проблемы
« Ответ #29 : 19.02.2016, 00:26:22 »
Вот что я вижу:
-LIMIT 120 с учетом GROUP BY
-Длинный диапазон IN
-Множество JOIN
Но главный виновник, IMHO - п.1
Ну от IN длинного мне ну никак не избавиться....
GROUP BY id может удалить ? Он там просто строкой в конце
Код: php
$this->query->group('id');
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Проблемы с созданием категорий после обновления

Автор Stasweb

Ответов: 1
Просмотров: 42
Последний ответ 22.08.2017, 12:08:05
от Stasweb
Проблемы с ЧПУ в Joomla 3. Выборочно по материалу

Автор webrapinfo

Ответов: 11
Просмотров: 345
Последний ответ 17.07.2017, 14:27:48
от webrapinfo
Переезд с localhost на рhostinger

Автор MrSwear

Ответов: 4
Просмотров: 220
Последний ответ 23.05.2017, 13:24:13
от MrSwear
Переезд сайта на новый домен

Автор Megatry

Ответов: 2
Просмотров: 144
Последний ответ 20.04.2017, 20:10:06
от o_fedor
Проблемы с русской локализацией

Автор Alex_Vazovski

Ответов: 4
Просмотров: 188
Последний ответ 29.03.2017, 23:37:49
от Alex_Vazovski