Як перейти від Enterprise Edition до Community Edition?


22

У мене працює магазин у Magento Enterprise Edition, я хотів би перейти до Community Edition, будь ласка, підкажіть, як я можу це зробити?


2
На ваше запитання відповіли? Чи є якась додаткова інформація, яку ви шукали, і я можу вам допомогти?
philwinkle

Відповіді:


21

Редагувати 3.10.14

Йенден написав про це чудовий посібник - деякі функції EE в програмі> = 1.13 насправді роблять оновлення трохи болючішими, ніж наведене нижче написання призведе до того, що ви повірите. Як зазначає Маріус у коментарях, всі паролі доведеться скинути, оскільки методи шифрування обробляються по-різному між EE / CE.

Докладніші відомості див. У блозі.

https://web.archive.org/web/20150208220803/ http://blog.yanted.com/2014/02/21/downgrading-magento-enterprise-to-community


Оригінальна публікація:

Міграція насправді дуже проста - наведіть свою кодову базу CE на вашу виробничу базу даних. Тут є трохи більше, ніж це (див. Інформацію про видалення папки нижче).

Якщо ви використовуєте добре побудовану EE-сумісну тему, вона повинна бути сумісною назад.

Ось деякі маловідомі функції ЕЕ, на які потрібно звернути увагу, переходячи до спільноти:

  • Немає доступу до атрибутів клієнта з панелі адміністратора
  • Клієнтські сегменти відійдуть
  • Події в каталозі, приватні продажі, запрошення тощо пройдуть
  • Ієрархії CMS не підтримуються в CE
  • Банери не підтримуються в СЕ
  • RMA - люди, здається, завжди забувають про RMA (інформація залишиться в db)
  • Інформація про реєстрацію адміністратора буде недоступною (все ще мешкає в db)

Якщо у вас є значна частина вашої CMS, вбудованої в EE, я рекомендую вам скористатися дуже ретельним та методичним підходом та переконатися, що ваша нова тема СЕ (або зворотно сумісна тема EE) підтримує ті дані, які все ще зберігаються.

Я також пропоную не викидати жодних таблиць з префіксом db enterprise, а також не видаляти жодних enterpriseпапок із ваших сторонніх тем. Вони не вважаються частиною встановлення EE, і вам слід брати їх із собою, коли ви виїжджаєте. Ви будете повинні видалити файли і папки в наступних місцях:

  • додаток / код / ​​core / Enterprise
  • додаток / дизайн / frontend / підприємство
  • app / design / adminhtml / за замовчуванням / за замовчуванням / макет / підприємство
  • app / design / adminhtml / за замовчуванням / за замовчуванням / шаблон / підприємство
  • skin / adminhtml / за замовчуванням / підприємство
  • шкіра / frontend / підприємство
  • додаток / тощо / модулі / Підприємство _ *. xml
  • js / підприємство
  • LICENSE_EE.txt
  • LICENSE_EE.html

І звичайно, вам потрібно врахувати справжній biggie: Повний кеш-сторінки . Я настійно рекомендую знайти гідний кеш-пам'ять на повній сторінці.

Удачі!


1
Дуже приємне пояснення. +1 без вагань, але я хочу додати проблему, яка з’явиться після міграції. Існуючі паролі клієнтів (і паролі адміністратора, на мою думку) не будуть дійсними через різні моделі шифрування (та методи), що використовуються в EE та CE.
Маріус

Маріус - Ви пробували це? Я думаю, це стосуватиметься лише 1.10+
philwinkle

У мене насправді була проблема навпаки. Коли я перейшов з CE на EE. Але це був EE 1.9. Мені довелося змінити модель шифрування, щоб зберегти паролі дійсними в EE. Я не впевнений, як все працює на пізніших версіях.
Маріус

1
'мурика, маріус. 'murica
philwinkle

1
Кілька місяців тому я зробив саме це, користуючись цим посібником. Я додав інструкцію щодо того, що я тут робив: proxiblue.com.au/blog/downgrade-ee-to-ce - ви знайдете відповідь на відповідь про зміну стек-коду про шифрування, а також сценарій міграції бази даних (я думаю, адаптований сформуйте посаду, зазначену у цій відповіді) Зниження працює з тих пір.
ProxiBlue

6

Посібник Yanted добре, але забуває деякі кроки. У таблицях є елементи, які містять неправильні посилання, і їх слід видалити. Це дані конфігурації, дані дозволів, заплановані завдання, дані про версії розширень Enterprise та атрибути підприємства eav;

DELETE FROM core_config_data WHERE path LIKE '%enterprise%';
DELETE FROM admin_rule WHERE resource_id LIKE '%enterprise%';
DELETE FROM api_rule WHERE resource_id LIKE '%enterprise%';
DELETE FROM api_rule WHERE resource_id LIKE '%giftcard%';
DELETE FROM cron_schedule WHERE job_code LIKE '%enterprise%';
DELETE FROM core_resource WHERE code LIKE '%enterprise%';
DELETE FROM catalog_eav_attribute WHERE frontend_input_renderer LIKE '%enterprise%';
DELETE FROM cms_block WHERE identifier = 'catalog_events_lister';
DELETE FROM eav_entity_type WHERE entity_model LIKE '%enterprise%';
DELETE FROM eav_attribute WHERE source_model LIKE 'enterprise_%';
DELETE FROM eav_attribute WHERE backend_model LIKE 'enterprise_%';
DELETE FROM eav_attribute WHERE attribute_code IN ('gift_wrapping_available', 'gift_wrapping_price');

Видалення віджетів, що задаються лише підприємством;

DELETE FROM widget_instance WHERE instance_type LIKE '%enterprise%';

Видалити оновлення власної верстки, на які посилаються віджети підприємства;

DELETE FROM core_layout_update WHERE xml LIKE '%enterprise%';

Укорочуйте свій сесійний стіл, щоб уникнути входу людей через наявність старих моделей підприємств;

TRUNCATE TABLE core_session;

Встановити правильну модель для URL-ключа для продукту;

UPDATE eav_attribute SET backend_model = 'catalog/product_attribute_backend_urlkey', backend_table = null WHERE attribute_code = 'url_key' AND entity_type_id = 4;

Також скорочуйте core_url_rewrite, оскільки вони повинні бути відновлені;

TRUNCATE TABLE core_url_rewrite;

Не забудьте також видалити тригери зі своїх таблиць після видалення таблиць Enterprise_ *;

DROP TABLE IF EXISTS enterprise_admin_passwords;
DROP TABLE IF EXISTS enterprise_banner_catalogrule;
DROP TABLE IF EXISTS enterprise_banner_content;
DROP TABLE IF EXISTS enterprise_banner_customersegment;
DROP TABLE IF EXISTS enterprise_banner_salesrule;
DROP TABLE IF EXISTS enterprise_banner;
DROP TABLE IF EXISTS enterprise_catalog_category_rewrite;
DROP TABLE IF EXISTS enterprise_catalog_product_rewrite;
DROP TABLE IF EXISTS enterprise_catalogevent_event_image;
DROP TABLE IF EXISTS enterprise_catalogevent_event;
DROP TABLE IF EXISTS enterprise_catalogpermissions;
DROP TABLE IF EXISTS enterprise_catalogpermissions_index;
DROP TABLE IF EXISTS enterprise_catalogpermissions_index_product;
DROP TABLE IF EXISTS enterprise_cms_hierarchy_lock;
DROP TABLE IF EXISTS enterprise_cms_hierarchy_metadata;
DROP TABLE IF EXISTS enterprise_cms_hierarchy_node;
DROP TABLE IF EXISTS enterprise_cms_increment;
DROP TABLE IF EXISTS enterprise_cms_page_revision;
DROP TABLE IF EXISTS enterprise_cms_page_version;
DROP TABLE IF EXISTS enterprise_customer_sales_flat_order;
DROP TABLE IF EXISTS enterprise_customer_sales_flat_order_address;
DROP TABLE IF EXISTS enterprise_customer_sales_flat_quote;
DROP TABLE IF EXISTS enterprise_customer_sales_flat_quote_address;
DROP TABLE IF EXISTS enterprise_customerbalance_history;
DROP TABLE IF EXISTS enterprise_customerbalance;
DROP TABLE IF EXISTS enterprise_customersegment_customer;
DROP TABLE IF EXISTS enterprise_customersegment_event;
DROP TABLE IF EXISTS enterprise_customersegment_website;
DROP TABLE IF EXISTS enterprise_giftcard_amount;
DROP TABLE IF EXISTS enterprise_giftcardaccount_history;
DROP TABLE IF EXISTS enterprise_giftcardaccount_pool;
DROP TABLE IF EXISTS enterprise_giftcardaccount;
DROP TABLE IF EXISTS enterprise_giftregistry_data;
DROP TABLE IF EXISTS enterprise_giftregistry_item_option;
DROP TABLE IF EXISTS enterprise_giftregistry_item;
DROP TABLE IF EXISTS enterprise_giftregistry_label;
DROP TABLE IF EXISTS enterprise_giftregistry_person;
DROP TABLE IF EXISTS enterprise_giftregistry_type_info;
DROP TABLE IF EXISTS enterprise_giftregistry_entity;
DROP TABLE IF EXISTS enterprise_giftregistry_type;
DROP TABLE IF EXISTS enterprise_giftwrapping_store_attributes;
DROP TABLE IF EXISTS enterprise_giftwrapping_website;
DROP TABLE IF EXISTS enterprise_giftwrapping;
DROP TABLE IF EXISTS enterprise_index_multiplier;
DROP TABLE IF EXISTS enterprise_invitation_status_history;
DROP TABLE IF EXISTS enterprise_invitation_track;
DROP TABLE IF EXISTS enterprise_invitation;
DROP TABLE IF EXISTS enterprise_logging_event_changes;
DROP TABLE IF EXISTS enterprise_logging_event;
DROP TABLE IF EXISTS enterprise_mview_metadata_event;
DROP TABLE IF EXISTS enterprise_mview_subscriber;
DROP TABLE IF EXISTS enterprise_mview_event;
DROP TABLE IF EXISTS enterprise_mview_metadata;
DROP TABLE IF EXISTS enterprise_mview_metadata_group;
DROP TABLE IF EXISTS enterprise_reminder_rule_coupon;
DROP TABLE IF EXISTS enterprise_reminder_rule_log;
DROP TABLE IF EXISTS enterprise_reminder_rule_website;
DROP TABLE IF EXISTS enterprise_reminder_template;
DROP TABLE IF EXISTS enterprise_reminder_rule;
DROP TABLE IF EXISTS enterprise_reward_history;
DROP TABLE IF EXISTS enterprise_reward_rate;
DROP TABLE IF EXISTS enterprise_reward_salesrule;
DROP TABLE IF EXISTS enterprise_reward;
DROP TABLE IF EXISTS enterprise_rma_grid;
DROP TABLE IF EXISTS enterprise_rma_item_eav_attribute_website;
DROP TABLE IF EXISTS enterprise_rma_item_eav_attribute;
DROP TABLE IF EXISTS enterprise_rma_item_entity_datetime;
DROP TABLE IF EXISTS enterprise_rma_item_entity_decimal;
DROP TABLE IF EXISTS enterprise_rma_item_entity_int;
DROP TABLE IF EXISTS enterprise_rma_item_entity_text;
DROP TABLE IF EXISTS enterprise_rma_item_entity_varchar;
DROP TABLE IF EXISTS enterprise_rma_item_entity;
DROP TABLE IF EXISTS enterprise_rma_item_form_attribute;
DROP TABLE IF EXISTS enterprise_rma_shipping_label;
DROP TABLE IF EXISTS enterprise_rma_status_history;
DROP TABLE IF EXISTS enterprise_rma;
DROP TABLE IF EXISTS enterprise_sales_creditmemo_grid_archive;
DROP TABLE IF EXISTS enterprise_sales_invoice_grid_archive;
DROP TABLE IF EXISTS enterprise_sales_order_grid_archive;
DROP TABLE IF EXISTS enterprise_sales_shipment_grid_archive;
DROP TABLE IF EXISTS enterprise_scheduled_operations;
DROP TABLE IF EXISTS enterprise_staging_action;
DROP TABLE IF EXISTS enterprise_staging_item;
DROP TABLE IF EXISTS enterprise_staging_log;
DROP TABLE IF EXISTS enterprise_staging_product_unlinked;
DROP TABLE IF EXISTS enterprise_staging;
DROP TABLE IF EXISTS enterprise_targetrule_customersegment;
DROP TABLE IF EXISTS enterprise_targetrule_index_crosssell_product;
DROP TABLE IF EXISTS enterprise_targetrule_index_crosssell;
DROP TABLE IF EXISTS enterprise_targetrule_index_related_product;
DROP TABLE IF EXISTS enterprise_targetrule_index_related;
DROP TABLE IF EXISTS enterprise_targetrule_index_upsell_product;
DROP TABLE IF EXISTS enterprise_targetrule_index_upsell;
DROP TABLE IF EXISTS enterprise_targetrule_index;
DROP TABLE IF EXISTS enterprise_targetrule_product;
DROP TABLE IF EXISTS enterprise_targetrule;
DROP TABLE IF EXISTS enterprise_url_rewrite_category_cl;
DROP TABLE IF EXISTS enterprise_url_rewrite_product_cl;
DROP TABLE IF EXISTS enterprise_url_rewrite_redirect_cl;
DROP TABLE IF EXISTS enterprise_url_rewrite_redirect_rewrite;
DROP TABLE IF EXISTS enterprise_url_rewrite_redirect;
DROP TABLE IF EXISTS enterprise_url_rewrite;
DROP TABLE IF EXISTS enterprise_customersegment_segment;

DROP TRIGGER IF EXISTS trg_catalog_category_entity_after_insert;
DROP TRIGGER IF EXISTS trg_catalog_category_entity_after_update;
DROP TRIGGER IF EXISTS trg_catalog_category_entity_after_delete;
DROP TRIGGER IF EXISTS trg_catalog_category_entity_url_key_after_insert;
DROP TRIGGER IF EXISTS trg_catalog_category_entity_url_key_after_update;
DROP TRIGGER IF EXISTS trg_catalog_category_entity_url_key_after_delete;
DROP TRIGGER IF EXISTS trg_catalog_product_entity_url_key_after_insert;
DROP TRIGGER IF EXISTS trg_catalog_product_entity_url_key_after_delete;
DROP TRIGGER IF EXISTS trg_catalog_product_entity_url_key_after_update;
DROP TRIGGER IF EXISTS trg_catalog_eav_attribute_after_insert;
DROP TRIGGER IF EXISTS trg_catalog_eav_attribute_after_update;
DROP TRIGGER IF EXISTS trg_catalog_eav_attribute_after_delete;
DROP TRIGGER IF EXISTS trg_core_config_data_after_insert;
DROP TRIGGER IF EXISTS trg_core_config_data_after_update;
DROP TRIGGER IF EXISTS trg_core_config_data_after_delete;
DROP TRIGGER IF EXISTS trg_core_store_group_after_insert;
DROP TRIGGER IF EXISTS trg_core_store_group_after_update;
DROP TRIGGER IF EXISTS trg_core_store_group_after_delete;
DROP TRIGGER IF EXISTS trg_core_store_after_insert;
DROP TRIGGER IF EXISTS trg_core_store_after_delete;
DROP TRIGGER IF EXISTS trg_core_store_after_update;
DROP TRIGGER IF EXISTS trg_core_website_after_delete;
DROP TRIGGER IF EXISTS trg_customer_group_after_insert;

І реіндекс!


0

Ось 2 центи з моєї сторони (але це для Magento 2 і підхід може бути подібним).

  1. Створіть нову гілку від майстра
  2. Оновіть composer.json
  3. Видалення пов'язаних з EE файлів ліцензій (не потрібно)
  4. Вимкнути модулі EE
  5. Оновіть композитора
  6. Очищення БД
  7. Очистити кеш
  8. Перевірте Magento Edition
  9. Перегляньте веб-сайт і ретельно перевірте
  10. Жива розгортання

Детальне пояснення можна знайти на
https://blog.magepsycho.com/migrate-downgrade-magento-2-from-enterprise-to-community-edition/

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.