Помогите с переносом с 2.10.1 до актуальной 2.15.1

InstantCMS 2.X

при переносе контента news через mysql ошибка в отладке

#1 16 апреля 2022 в 14:27

Здравствуйте такая ситуация есть новостной сайт 2.10.1 там за 5 лет много новостей. Создал новый сайт на 2.15.1 создал тип контента идентичный как там и все поля и перенес полностью новости со старого cms_con_news и при импорте таблиц со старой в новую соблюдая всю структуру почему-то ошибка вот такая 

--
— Индексы сохранённых таблиц
--

--
— Индексы таблицы `cms_con_news`
--
ALTER TABLE `cms_con_news`
  ADD PRIMARY KEY (`id`),
  ADD KEY `category_id` (`category_id`),
  ADD KEY `approved_by` (`approved_by`),
  ADD KEY `folder_id` (`folder_id`),
  ADD KEY `slug` (`slug`),
  ADD KEY `date_pub` (`is_pub`,`is_parent_hidden`,`is_approved`,`date_pub`),
  ADD KEY `parent_id` (`parent_id`,`parent_type`,`date_pub`),
  ADD KEY `user_id` (`user_id`,`date_pub`),
  ADD KEY `date_pub_end` (`date_pub_end`),
  ADD KEY `dataset_discussed` (`is_pub`,`is_parent_hidden`,`is_approved`,`comments`),
  ADD KEY `dataset_popular` (`is_pub`,`is_parent_hidden`,`is_approved`,`rating`),
  ADD KEY `dataset_glav` (`na_glav`,`is_pub`,`is_parent_hidden`,`is_approved`,`date_pub`),
  ADD KEY `na_glav` (`na_glav`),
  ADD KEY `dataset_poslmy` (`is_pub`,`is_parent_hidden`,`is_deleted`,`is_approved`,`date_pub`),
  ADD KEY `dataset_mytopban` (`is_pub`,`is_parent_hidden`,`is_deleted`,`is_approved`),
  ADD FULLTEXT KEY `lid[...]
Ответ MySQL: Документация

#1068 — Multiple primary key defined

И вроде бы все ничего если взять штук 500 новостей

Но если я таким способом импортирую все 55 тысяч новостей то потом сайт грузит по 3 секунды при отладке пишит ошибку 

SELECT i.*, u.nickname as `user_nickname`, u.slug as `user_slug`, u.is_deleted as `user_is_deleted`, u.groups as `user_groups`, u.avatar as `user_avatar`, u.privacy_options as `user_privacy_options`, f.title as `folder_title`, cat.title as `cat_title`, cat.slug as `cat_slug`
FROM cms_con_news i
FORCE INDEX (date_pub)
INNER JOIN cms_users as u ON u.id = i.user_id
LEFT JOIN cms_content_folders as f ON f.id = i.folder_id
LEFT JOIN cms_con_news_cats as cat ON cat.id = i.category_id
WHERE (i.is_approved = '1') AND (i.is_deleted IS NULL) AND (i.is_pub = '1')
ORDER BY i.date_pub desc
LIMIT 10

Время выполнения 1.17121 секунд

Как мне перенести безболезненно все новости чтоб потом сайт не грузило не могу понять в чем проблема я в mysql не силен. Уже появляются мысли через импорт контента по тихоньку импортировать

Добавлено спустя 8 минут

Здравствуйте такая ситуация есть новостной сайт 2.10.1 там за 5 лет много новостей. Создал новый сайт на 2.15.1 создал тип контента идентичный как там и все поля и перенес полностью новости со старого cms_con_news и при импорте таблиц со старой в новую соблюдая всю структуру почему-то ошибка вот такая 

--
— Индексы сохранённых таблиц
--

--
— Индексы таблицы `cms_con_news`
--
ALTER TABLE `cms_con_news`
  ADD PRIMARY KEY (`id`),
  ADD KEY `category_id` (`category_id`),
  ADD KEY `approved_by` (`approved_by`),
  ADD KEY `folder_id` (`folder_id`),
  ADD KEY `slug` (`slug`),
  ADD KEY `date_pub` (`is_pub`,`is_parent_hidden`,`is_approved`,`date_pub`),
  ADD KEY `parent_id` (`parent_id`,`parent_type`,`date_pub`),
  ADD KEY `user_id` (`user_id`,`date_pub`),
  ADD KEY `date_pub_end` (`date_pub_end`),
  ADD KEY `dataset_discussed` (`is_pub`,`is_parent_hidden`,`is_approved`,`comments`),
  ADD KEY `dataset_popular` (`is_pub`,`is_parent_hidden`,`is_approved`,`rating`),
  ADD KEY `dataset_glav` (`na_glav`,`is_pub`,`is_parent_hidden`,`is_approved`,`date_pub`),
  ADD KEY `na_glav` (`na_glav`),
  ADD KEY `dataset_poslmy` (`is_pub`,`is_parent_hidden`,`is_deleted`,`is_approved`,`date_pub`),
  ADD KEY `dataset_mytopban` (`is_pub`,`is_parent_hidden`,`is_deleted`,`is_approved`),
  ADD FULLTEXT KEY `lid[...]
Ответ MySQL: Документация

#1068 — Multiple primary key defined

И вроде бы все ничего если взять штук 500 новостей

Но если я таким способом импортирую все 55 тысяч новостей то потом сайт грузит по 3 секунды при отладке пишит ошибку 

SELECT i.*, u.nickname as `user_nickname`, u.slug as `user_slug`, u.is_deleted as `user_is_deleted`, u.groups as `user_groups`, u.avatar as `user_avatar`, u.privacy_options as `user_privacy_options`, f.title as `folder_title`, cat.title as `cat_title`, cat.slug as `cat_slug`
FROM cms_con_news i
FORCE INDEX (date_pub)
INNER JOIN cms_users as u ON u.id = i.user_id
LEFT JOIN cms_content_folders as f ON f.id = i.folder_id
LEFT JOIN cms_con_news_cats as cat ON cat.id = i.category_id
WHERE (i.is_approved = '1') AND (i.is_deleted IS NULL) AND (i.is_pub = '1')
ORDER BY i.date_pub desc
LIMIT 10

Время выполнения 1.17121 секунд

Как мне перенести безболезненно все новости чтоб потом сайт не грузило не могу понять в чем проблема я в mysql не силен. Уже появляются мысли через импорт контента по тихоньку импортировать

yourwebs

SELECT i.*, u.nickname as `user_nickname`, u.slug as `user_slug`, u.is_deleted as `user_is_deleted`, u.groups as `user_groups`, u.avatar as `user_avatar`, u.privacy_options as `user_privacy_options`, f.title as `folder_title`, cat.title as `cat_title`, cat.slug as `cat_slug`
FROM cms_con_news i
FORCE INDEX (date_pub)
INNER JOIN cms_users as u ON u.id = i.user_id
LEFT JOIN cms_content_folders as f ON f.id = i.folder_id
LEFT JOIN cms_con_news_cats as cat ON cat.id = i.category_id
WHERE (i.is_approved = '1') AND (i.is_deleted IS NULL) AND (i.is_pub = '1')
ORDER BY i.date_pub desc
LIMIT 4

Время выполнения 0.88028 секунд
/system/controllers/content/model.php => 1761 => modelContent->getContentItems()
SELECT i.*, u.nickname as `user_nickname`, u.slug as `user_slug`, u.is_deleted as `user_is_deleted`, u.groups as `user_groups`, u.avatar as `user_avatar`, u.privacy_options as `user_privacy_options`, f.title as `folder_title`, cat.title as `cat_title`, cat.slug as `cat_slug`
FROM cms_con_news i
FORCE INDEX (date_pub)
INNER JOIN cms_users as u ON u.id = i.user_id
LEFT JOIN cms_content_folders as f ON f.id = i.folder_id
LEFT JOIN cms_con_news_cats as cat ON cat.id = i.category_id
WHERE (i.is_approved = '1') AND (i.is_deleted IS NULL) AND (i.is_pub = '1')
ORDER BY i.date_pub desc
LIMIT 30

Время выполнения 0.86205 секунд

итог такой за каждый виджет будет по секунде запрос а то и больше и сайт конкретно грузит хотя на версии 2.10.1 вся главная страница в кучу виджетах 55 тысяч статей и сайт грузит 0.5 а тут он будет под 10 сек

#2 16 апреля 2022 в 15:32

Совсем не спец в переносах, для себя сделал бы так:

1) Установил бекап сайта с версией 2.10.1 на локальный сервер.

2) Отключил сторонние дополнения

3) На локальном сервере обновился до версии 2.15.1

4) Если б что то не устраивало тогда уже импортировал таблицу news и другие связанные таблицы с данной таблицей на чистую установку.

Что то где то так.

#3 16 апреля 2022 в 15:50

Совсем не спец в переносах, для себя сделал бы так:

1) Установил бекап сайта с версией 2.10.1 на локальный сервер.

2) Отключил сторонние дополнения

3) На локальном сервере обновился до версии 2.15.1

4) Если б что то не устраивало тогда уже импортировал таблицу news и другие связанные таблицы с данной таблицей на чистую установку.

Что то где то так.

Nikolay

пытался я обновиться таким способом но с 2.10.1 кучу ошибок при обновлении это только в них копаться проще уж базу с новостями перенести на чистый движок через компонент импорт от лоадера

#4 16 апреля 2022 в 16:04

Зачем такие сложности, когда можно (предварительно отключив сторонние дополнения) шаг за шагом по инструкциям в новостях обновиться поэтапно. Процесс точно рабочий. Обновлял пару сайтов с 2.5.1 и 2.7.2 до 2.14.1 В процессе обновления (в районе 2.8.0) были какие-то ошибки с длиной полей. Но все решаемо.

#5 16 апреля 2022 в 17:17

Зачем такие сложности, когда можно (предварительно отключив сторонние дополнения) шаг за шагом по инструкциям в новостях обновиться поэтапно. Процесс точно рабочий. Обновлял пару сайтов с 2.5.1 и 2.7.2 до 2.14.1 В процессе обновления (в районе 2.8.0) были какие-то ошибки с длиной полей. Но все решаемо.

Zau4man

Ну а если я хочу новую чистую систему а только новости забрать есть инструкция? Почему оно так долго закружает с виджета новости в чем проблема?

#6 17 апреля 2022 в 00:35

Если не особо шарите, попробуйте так. Ставите систему. Копируете таблицы с новостями(_news). Удаляете. Переносите ваши таблицы с новостями. Потом сравниваете с копией и каких полей не хватает, добавляете. Думаю типы полей навряд ли поменялись. Может и прокатит.

#7 17 апреля 2022 в 01:47

Если не особо шарите, попробуйте так. Ставите систему. Копируете таблицы с новостями(_news). Удаляете. Переносите ваши таблицы с новостями. Потом сравниваете с копией и каких полей не хватает, добавляете. Думаю типы полей навряд ли поменялись. Может и прокатит.

Lora

В общем проблема не в этом я обновился на локальном поэтапно с 2.10.1 до 2.15.1 ошибок не было единственное начиная с версии 2.14.1 след обновы по адресу после установки finish был белый экран я просто возвращался в админку и версия стояла уже новая сайт работал на модерне без ошибок. Но именно на версии 2.15 появилась снова та же херня долгие запросы

/system/controllers/content/model.php => 1761 => modelContent->getContentItems()
SELECT DISTINCT i.*, u.nickname as `user_nickname`, u.slug as `user_slug`, u.is_deleted as `user_is_deleted`, u.groups as `user_groups`, u.avatar as `user_avatar`, u.privacy_options as `user_privacy_options`, f.title as `folder_title`, cat.title as `cat_title`, cat.slug as `cat_slug`
FROM cms_con_news i
FORCE INDEX (date_pub)
INNER JOIN cms_con_news_cats_bind as b ON b.item_id = i.id
INNER JOIN cms_con_news_cats as c ON c.id = b.category_id
INNER JOIN cms_users as u ON u.id = i.user_id
LEFT JOIN cms_content_folders as f ON f.id = i.folder_id
LEFT JOIN cms_con_news_cats as cat ON cat.id = i.category_id
WHERE (c.ns_left >= '2') AND (c.ns_right <= '11') AND (i.is_approved = '1') AND (i.is_deleted IS NULL) AND (i.is_pub = '1')
ORDER BY i.date_pub desc
LIMIT 10

Время выполнения 1.18447 секунд

версия php 7.4.28 может 2.15 версия у всех такие долгие запросы если новостей под 50 тысяч? Методы какие-то новые у них там все-таки поддержка php 8 скажите мне кто-нить в чем проблема обновился без ошибок а такая херня осталась

Добавлено спустя 19 минут

Если не особо шарите, попробуйте так. Ставите систему. Копируете таблицы с новостями(_news). Удаляете. Переносите ваши таблицы с новостями. Потом сравниваете с копией и каких полей не хватает, добавляете. Думаю типы полей навряд ли поменялись. Может и прокатит.

Lora

В общем проблема не в этом я обновился на локальном поэтапно с 2.10.1 до 2.15.1 ошибок не было единственное начиная с версии 2.14.1 след обновы по адресу после установки finish был белый экран я просто возвращался в админку и версия стояла уже новая сайт работал на модерне без ошибок. Но именно на версии 2.15 появилась снова та же херня долгие запросы

/system/controllers/content/model.php => 1761 => modelContent->getContentItems()
SELECT DISTINCT i.*, u.nickname as `user_nickname`, u.slug as `user_slug`, u.is_deleted as `user_is_deleted`, u.groups as `user_groups`, u.avatar as `user_avatar`, u.privacy_options as `user_privacy_options`, f.title as `folder_title`, cat.title as `cat_title`, cat.slug as `cat_slug`
FROM cms_con_news i
FORCE INDEX (date_pub)
INNER JOIN cms_con_news_cats_bind as b ON b.item_id = i.id
INNER JOIN cms_con_news_cats as c ON c.id = b.category_id
INNER JOIN cms_users as u ON u.id = i.user_id
LEFT JOIN cms_content_folders as f ON f.id = i.folder_id
LEFT JOIN cms_con_news_cats as cat ON cat.id = i.category_id
WHERE (c.ns_left >= '2') AND (c.ns_right <= '11') AND (i.is_approved = '1') AND (i.is_deleted IS NULL) AND (i.is_pub = '1')
ORDER BY i.date_pub desc
LIMIT 10

Время выполнения 1.18447 секунд

версия php 7.4.28 может 2.15 версия у всех такие долгие запросы если новостей под 50 тысяч? Методы какие-то новые у них там все-таки поддержка php 8 скажите мне кто-нить в чем проблема обновился без ошибок а такая херня осталась

yourwebs

Поробовал поменять шаблон в 2.15.1 на дефолт и что вы думаете?) Нету таких долгих запросов сайт загрузился за 0.4 а так 1.98 получается модерн шаблон его виджет список контента долго обрабатывает базу или что? тот же виджет список контента с теми же параметрами на дефолт шаблоне грузит моментально 0.4

Добавлено спустя 31 минуту

В общем останусь на 2.14.1 идеально на нем летает все и жду ответа потом обновлюсь

Добавлено спустя 13 минут

Время генерации страницы: 0.1230 секунды, память: 3.75 Мб.

Время генерации страницы: 1.5738 секунды, память: 4 Мб.

вот она разница между 2.14.1 и 2.15.1

#8 17 апреля 2022 в 10:25

получается модерн шаблон его виджет список контента долго обрабатывает базу или что?

yourwebs

В консоль браузера смотрели?

и жду ответа

yourwebs

Думаю, что это контрпродуктивно.

#9 17 апреля 2022 в 12:52

получается модерн шаблон его виджет список контента долго обрабатывает базу или что?

yourwebs

В консоль браузера смотрели?

и жду ответа

yourwebs

Думаю, что это контрпродуктивно.

IamB

да консоль показывает задержку в 3-4 раза больше относительно 2.4.1

Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.