Может уже где-то был освещен алгоритм перехода на новую версию в плане переноса контента сайта (товары, категории, статьи, отзывы и пр.)?
Сейчас перевожу магазин с 4.2.3 на 4.3.3
4.3.3 поставил на локалку.
Думаю, как воссоздать контент. По сути клон старого сайта на новой версии движка.
Ну товары, допустим, - экспорт/импорт. Характеристики - тоже.
А вот картинки - их тоже надо экспорт/импорт или достаточно скопировать папку корень/images ?
А как быть с категориями - их около 50, у каждой свое описание. картинка, сео… экспорта/импорта нет
А как быть со статьями, есть два десятка. И отзывы там есть. Как их перенести?
Наверное нельзя просто сделать дамп всей старой базы и развернуть на новой версии?
Расскажите, кто как действовал?
Пока напишу, что удалось сделать мне. Может пригодится тем, кто пошел путем установки чистого движка и заливки туда данных со старого сайта. Жаль, что разработчики не реализовали перенос ВСЕГО контента, ну да ладно.
Итак, имеем работающий магазин в инете с допилами, перепилами, правкой дизайна, своей темой и прочее.
[color=#ff0000]Также имеем бэкап корня хостинга, полный дамп БД и любые другие бэкапы, которые позволят вам все вернуть назад.[/color]
И имеем девственно чистый сайт, установленный локально.
ВАЖНО. На локальном сайте должны быть установлены подключены и настроены все те же модули, которые есть на основном сайте!
Мне нужно.
- Перенести записи в базе данных
- Перенести файлы
- Перенести дизайн
- Если мы перенсем наши записи в локальную БД, то сайт не запустится, т.к. У чистого сайта не тот storefront и у чистого сайта нет вашей самопильной названной темой, с самодельным стилем и пр. Поэтому, перед переносом БД на основном сайте установите текущей дефолтную тему и дефолтный стиль, например Responsive потом вернете назад, дизайн весь полезет конечно, но он нам сейчас не нужен.
Идем сюда качаем и устанавливаем бесплатную прогу dbForge Studio for MySQL. Она нужна для синхронизации БД. Мы ее поставим, запустим, подключем к ней БД источник на хостинге и БД приемник - локальную. После чего прога сравнит структуру таблиц и мы ручками поправим различия. Потом запустим синхронизацию и данные с сервака разместятся в новой и чистой БД на своих родных местах. Нам останется вручную поправить storefront. Вуаля!
- Копируем папку images на ее место и папку var/files/1/exim с рабочего сайта. Если у вас есть еще какие-нибудь файлы контента - их тоже. Удаляем все, что в папке кэш.
- Запускаем новый сайт, видим, что весь контент в наличии (товары, категории, иконки, картинки, статьи, отзывы), приступаем к дизайну. Смотрим видео, модифицируем модулем, делаем все чистенько, а не прямо в коде и css, как это было при пилении первого сайта.
И ЕЩЕ. При синхронизации БД перенесутся данные лицензирования и пароли администратора. Поскольку они хранятся захешированными, В админке полезут ошибки, нужно зайти в лицензирование и выбрать лицензию и поменять пароль администратора.
Еще не смотрел, что с юзерскими паролями. Но в случае чего импорт экспорт/импорт пользователей работает отлично.
Как перенести локальный сайт в инет, думаю, вы знаете.
Удачи всем!
[quote]Жаль, что разработчики не реализовали перенос ВСЕГО контента, ну да ладно.[/quote]
Зачем? Есть апгрейд, который прекрасно делает это.
Если хочется по особому, то:
- Делаем копию.
- Делаем апгрейд копии до новой версии.
- Делаем чистую инсталляцию и подключаем к ней апгрейженую базу.
- Переносим контентные файлы на новую инсталляцию.
То что сделали Вы не совсем правильно и не нужно это советовать людям, так как как Вы только подогнали структуру базы данных (колонки их названия) к новой версии, а апгрейд делает миграции данных:
- Изменяет структуру базы.
- Изменяет структуру данных и сами данные (например данные о заказе хранятся в сериализованном массиве, во время апгрейда эти данные могут изменится, апгрейд раскроет массив, преобразует данные и сохранит назад)
- Добавляет новые настройки и настройки модулей (они у вас не появятся из неоткуда)
Для всего этого пишутся миграции, которые запускаются при апгрейде, поэтому просто подогнать названия и количество колонок недостаточно для переноса.
Поэтому правильно именно обновлять и если хочется чистоты то переносить базу на чистую инсталяцию, можно например только товары, покупателей и заказы перенести, без блоков и дизайна.
[quote name='dbazhenov' timestamp='1438790598' post='225769']
Зачем? Есть апгрейд, который прекрасно делает это.
[/quote]
Ну конечно, Даниил, сам себя не похвалишь… Так уж и прекрасно…
Ну например. У меня версия 4.2.3 Прекрасный апгрейд предлагаем мне обновиться до глючной 4.2.4. Не знаю, как там дальше, но как-то не хочется собирать все глюки по очереди.
Второй пример. Как только вышла 4.3 - сколько копий было сломано, пока дошли до 4.3.3 Я внимательно читал форум, как люди мучились. Движок развивается, но не идеален и далеко не прекрасен в смысле апгрейда.
[quote name='dbazhenov' timestamp='1438790598' post='225769']
То что сделали Вы не совсем правильно и не нужно это советовать людям, так как как Вы только подогнали структуру базы данных (колонки их названия) к новой версии, а апгрейд делает миграции данных:…[/quote]
Я бы сказал - совсем не правильно. dbForge довольно хорошо показывает различия и в структуре и в типе данных, в общем для конкретного примера вполне сгодится. Что поделать если разработчик
[quote]Для всего этого пишутся миграции, которые запускаются при апгрейде, поэтому просто подогнать названия и количество колонок недостаточно для переноса.[/quote]
Миграции хороши при последовательном переходе от версии к версии. А как человеку обновиться, скажем со второй версии?
Конечно делать экспорт, например, пользователей важно и нужно, а категорий? Раз уже есть экспорт, то почему не довести до логической полноты?
[quote]и если хочется чистоты то переносить базу на чистую инсталяцию, можно например только товары, покупателей и заказы перенести, без блоков и дизайна.[/quote]
И похоронить категории, статьи, отзывы? Или переносить вручную? Экспорта-то нет.
А блоки и дизайн я как раз не переносил!
В общем, народ, я не призываю ник чему, я просто показал свое неполное решение, неполного экспорта/импорта контента, не имея, по сути альтернативы. Применять или нет - решать вам.
(я уже не говорю о времени. За полчаса я практически решил перенос ВСЕГО контента! Угадайте, сколько времени надо, чтобы экспортировать/импортировать 30 000 товаров, 90 000 оптовых цен, а также характеристик, пользователей и пр., а когда полезут таймауты на Денвере, будет вообще весело)
В целом обновление движка, которое не оставляет хвосты, это хорошо. А если оставляет? Но ведь часто и юзеры таких хвостов навертят, что хоть убей надо начисто все ставить.
И вот тогда поднимается вопрос переноса чисто контента. Кстати, разработчики ползут немного в этом направлении, например к бэкапу базы добавили бэкап файлов. Но это все равно куски.
Контент - самое ценное, что есть на сайте, это не только товары, это и СЕО адреса, и мета дескрипшены, и альты к картинкам, - все, над чем трудились люди. И это ВСЕ нужно уметь бэкапить и распаковывать на чистую систему.
Все проблемы обновлений высосаны из пальца. Хватит пальцев рук, чтобы пересчитать клиентов с проблемами при обновлении. Большинство проблем связаны с серверами (по таймауту обрывается) или сторонними модулями или верстка чуть чуть слезет. Я не знаю ниодного случая, чтобы проблемы с обновлениями не решались тех. поддержкой или мной лично. Обновления работают прекрасно.
Обновления должны работать последовательно и только так. Никаких косяков там нет, чтобы их собирать.
Для тех кто хочет обновиться с 2.x и 3.x может это сделать с помощью модуля “Импорт магазина”, который высасывает данные в версию 4.3.2
[quote name='dbazhenov' timestamp='1438794215' post='225779']
Обновления работают прекрасно.
[/quote]
…Ок. На этом и порешили.
Надеюсь, что дальше я тоже буду пользоваться стандартным обновлением.
[quote name=‘dbazhenov’ timestamp=‘1438794215’ post=‘225779’]
Для тех кто хочет обновиться с 2.x и 3.x может это сделать с помощью модуля “Импорт магазина”, который высасывает данные в версию 4.3.2
[/quote]
Вот правильная идея… Надеюсь, он высасывает все данные.
[quote name='daer' timestamp='1438794833' post='225781']
Вот правильная идея… Надеюсь, он высасывает все данные.
[/quote]
Да, только нужно поставить именно 4.3.2 и дальше обновляться через центр обновлений. 4.3.2 доступна в HelpDesk.
не нашел в HelpDesk 4.3.2 вижу тоолько 4.3.3.
Даниил, тему лучше удалить, лезут таки ошибки.
Буду пробовать стандартный метод, Сделаю клон на локалке и буду обновлять на локалке. При этом идет обновление 4.2.3 - 4.2.4 - 4.3.1 при этом в подсказках совет настоятельно подождать 4.3.2 по техническим причинам. А чего ждать… как ждать… непонятно 4.3.2 в центра обновлений появится наверное уже после обновления на 4.3.1
[quote name='daer' timestamp='1438854253' post='225874']
не нашел в HelpDesk 4.3.2 вижу тоолько 4.3.3.
Даниил, тему лучше удалить, лезут таки ошибки.
Буду пробовать стандартный метод, Сделаю клон на локалке и буду обновлять на локалке. При этом идет обновление 4.2.3 - 4.2.4 - 4.3.1 при этом в подсказках совет настоятельно подождать 4.3.2 по техническим причинам. А чего ждать… как ждать… непонятно 4.3.2 в центра обновлений появится наверное уже после обновления на 4.3.1
[/quote]
Да Это я попросил написать Она уже есть обновляйтесь.
4.3.2 можно попросить в HelpDesk, не успели выложить отдельно.
Кстати, после обновления, если все прошло успешно, папку \www\var\upgrade можно очистить?
А также папку www\images\detailed можно очистить?
[quote name='daer' timestamp='1439028193' post='226065']
Кстати, после обновления, если все прошло успешно, папку \www\var\upgrade можно очистить?
А также папку www\images\detailed можно очистить?
[/quote]
images/detailed - это все ваши картинки не нужно там чистить ничего
/var/upgrade/ тоже не стоит чистить , можно packages удалить в этой папке, да и то смысла нет.
ну тогда не будем… я думал, что после того, как картинки нарезаны, исходники не нужны (на хостинге). То же самое и с обновлениями.
Ясное дело , что локально все скопировано и заархивировано.
[quote name='daer' timestamp='1439028947' post='226068']
ну тогда не будем… я думал, что после того, как картинки нарезаны, исходники не нужны (на хостинге). То же самое и с обновлениями.
Ясное дело , что локально все скопировано и заархивировано.
[/quote]
Нет, картинки нужны, кэш картинок может очищаться и т.д.