Skip to content

Migrate Magento from EE 2.4.5 to Magento CE 2.4.7-p3 #20

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions scripts/catalogrule.sql
Original file line number Diff line number Diff line change
Expand Up @@ -62,5 +62,7 @@ ALTER TABLE `catalogrule_website`
-- ----------------
-- Drop sequence --
-- ----------------
ALTER TABLE `magento_banner_catalogrule`
DROP FOREIGN KEY `MAGENTO_BANNER_CATRULE_RULE_ID_SEQUENCE_CATRULE_SEQUENCE_VAL`;

DROP TABLE `sequence_catalogrule`;
17 changes: 12 additions & 5 deletions scripts/category.sql
Original file line number Diff line number Diff line change
Expand Up @@ -17,14 +17,14 @@ ALTER TABLE `catalog_category_entity_varchar`
-- Clean duplicates for catalog category entity

DELETE e
FROM `catalog_category_entity` e
FROM `catalog_product_entity` e
LEFT OUTER JOIN (
SELECT MAX(`updated_in`) as `last_updated_in`, `entity_id`
FROM `catalog_category_entity`
SELECT MAX(`updated_at`) as `last_updated_at`, `entity_id`
FROM `catalog_product_entity`
GROUP BY `entity_id`
) AS p
ON e.`entity_id` = p.`entity_id` AND e.`updated_in` = p.`last_updated_in`
WHERE p.`last_updated_in` IS NULL;
ON e.`entity_id` = p.`entity_id` AND e.`updated_at` = p.`last_updated_at`
WHERE p.`last_updated_at` IS NULL;

-- Populate `entity_id` column for catalog category entity

Expand Down Expand Up @@ -131,4 +131,11 @@ ALTER TABLE `catalog_url_rewrite_product_category`
DROP FOREIGN KEY `CAT_URL_REWRITE_PRD_CTGR_CTGR_ID_SEQUENCE_CAT_CTGR_SEQUENCE_VAL`,
ADD CONSTRAINT `CAT_URL_REWRITE_PRD_CTGR_CTGR_ID_CAT_CTGR_ENTT_ENTT_ID` FOREIGN KEY (`category_id`) REFERENCES `catalog_category_entity` (`entity_id`) ON DELETE CASCADE ON UPDATE RESTRICT;

ALTER TABLE `magento_catalogevent_event`
DROP FOREIGN KEY `MAGENTO_CATEVENT_EVENT_CTGR_ID_SEQUENCE_CAT_CTGR_SEQUENCE_VAL`;
ALTER TABLE `magento_catalogpermissions`
DROP FOREIGN KEY `MAGENTO_CATPERMISSIONS_CTGR_ID_SEQUENCE_CAT_CTGR_SEQUENCE_VAL`;
ALTER TABLE `visual_merchandiser_rule`
DROP FOREIGN KEY `VISUAL_MERCHANDISER_RULE_CTGR_ID_SEQUENCE_CAT_CTGR_SEQUENCE_VAL`;

DROP TABLE `sequence_catalog_category`;
2 changes: 2 additions & 0 deletions scripts/cms.sql
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
update cms_page set creation_time = update_time WHERE `creation_time` LIKE '%0000%';

-- Enable `block_id` for block store
ALTER TABLE `cms_block_store`
ADD COLUMN `block_id` SMALLINT(6) NOT NULL COMMENT 'Entity ID';
Expand Down
9 changes: 9 additions & 0 deletions scripts/ee.sql
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,15 @@
-- ------------------------------------------------------ --

SET FOREIGN_KEY_CHECKS = 0;

-- Clean up RMA & Gift Registry table
ALTER TABLE `magento_rma_item_entity`
DROP FOREIGN KEY `MAGENTO_RMA_ITEM_ENTITY_RMA_ENTITY_ID_MAGENTO_RMA_ENTITY_ID`;
ALTER TABLE `magento_giftregistry_entity`
DROP FOREIGN KEY `FK_AC6F6DB40013C09CA44DFBC3453C4954`;
ALTER TABLE `magento_giftregistry_item`
DROP FOREIGN KEY `FK_BAC522E38736441C84A365FDA8A89F3D`;

DROP TABLE IF EXISTS
`magento_acknowledged_bulk`,
`magento_banner`,
Expand Down
33 changes: 24 additions & 9 deletions scripts/product.sql
Original file line number Diff line number Diff line change
Expand Up @@ -269,7 +269,7 @@ ALTER TABLE `catalog_product_bundle_option`
DROP PRIMARY KEY,
DROP COLUMN `parent_id`,
CHANGE COLUMN `new_parent_id` `parent_id` INT(10) UNSIGNED NOT NULL COMMENT 'Parent ID',
ADD CONSTRAINT `CATALOG_PRODUCT_BUNDLE_OPTION_PARENT_ID` UNIQUE KEY (`parent_id`),
ADD INDEX `CATALOG_PRODUCT_BUNDLE_OPTION_PARENT_ID` (`parent_id`),
MODIFY COLUMN `option_id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'Option ID',
ADD PRIMARY KEY (`option_id`);

Expand All @@ -287,8 +287,8 @@ ALTER TABLE `catalog_product_bundle_selection`
ADD CONSTRAINT `CAT_PRD_BNDL_SELECTION_OPT_ID_CAT_PRD_BNDL_OPT_OPT_ID` FOREIGN KEY (`option_id`) REFERENCES `catalog_product_bundle_option` (`option_id`) ON DELETE CASCADE ON UPDATE RESTRICT;

ALTER TABLE `catalog_product_bundle_selection_price`
DROP INDEX `CATALOG_PRODUCT_BUNDLE_SELECTION_PRICE_WEBSITE_ID`,
ADD CONSTRAINT `CATALOG_PRODUCT_BUNDLE_SELECTION_PRICE_WEBSITE_ID` FOREIGN KEY (`website_id`) REFERENCES `store_website` (`website_id`) ON DELETE CASCADE ON UPDATE RESTRICT,
-- DROP INDEX `CATALOG_PRODUCT_BUNDLE_SELECTION_PRICE_WEBSITE_ID`, -- we do not need to remove this index
-- ADD CONSTRAINT `CATALOG_PRODUCT_BUNDLE_SELECTION_PRICE_WEBSITE_ID` FOREIGN KEY (`website_id`) REFERENCES `store_website` (`website_id`) ON DELETE CASCADE ON UPDATE RESTRICT,
ADD CONSTRAINT `FK_DCF37523AA05D770A70AA4ED7C2616E4` FOREIGN KEY (`selection_id`) REFERENCES `catalog_product_bundle_selection` (`selection_id`) ON DELETE CASCADE ON UPDATE RESTRICT;

-- ------------------------------------------------------------------
Expand Down Expand Up @@ -353,17 +353,19 @@ ALTER TABLE `catalog_product_entity_varchar`
ALTER TABLE `catalog_product_entity_media_gallery_value_to_entity`
DROP FOREIGN KEY `CAT_PRD_ENTT_MDA_GLR_VAL_TO_ENTT_ROW_ID_CAT_PRD_ENTT_ROW_ID`,
DROP INDEX `CAT_PRD_ENTT_MDA_GLR_VAL_TO_ENTT_ROW_ID_CAT_PRD_ENTT_ROW_ID`,
ADD CONSTRAINT `CAT_PRD_ENTT_MDA_GLR_VAL_TO_ENTT_VAL_ID_ENTT_ID` UNIQUE KEY (`value_id`,`entity_id`),
DROP PRIMARY KEY, ADD PRIMARY KEY (`value_id`),
DROP COLUMN `row_id`;
DROP PRIMARY KEY,
DROP COLUMN `row_id`,
ADD PRIMARY KEY (`value_id`, `entity_id`),
ADD CONSTRAINT `CAT_PRD_ENTT_MDA_GLR_VAL_TO_ENTT_VAL_ID_ENTT_ID` UNIQUE KEY (`value_id`,`entity_id`);


-- Gallery value
ALTER TABLE `catalog_product_entity_media_gallery_value`
DROP FOREIGN KEY `CAT_PRD_ENTT_MDA_GLR_VAL_ROW_ID_CAT_PRD_ENTT_ROW_ID`,
DROP INDEX `CATALOG_PRODUCT_ENTITY_MEDIA_GALLERY_VALUE_ROW_ID`,
DROP INDEX `CAT_PRD_ENTT_MDA_GLR_VAL_ROW_ID_VAL_ID_STORE_ID`,
DROP INDEX `CAT_PRD_ENTT_MDA_GLR_VAL_ROW_ID_VAL_ID_STORE_ID`,
ADD INDEX `CATALOG_PRODUCT_ENTITY_MEDIA_GALLERY_VALUE_ENTITY_ID` (`entity_id`),
ADD CONSTRAINT `CAT_PRD_ENTT_MDA_GLR_VAL_ENTT_ID_VAL_ID_STORE_ID` UNIQUE KEY (`entity_id`,`value_id`,`store_id`),
ADD INDEX `CAT_PRD_ENTT_MDA_GLR_VAL_ENTT_ID_VAL_ID_STORE_ID` (`entity_id`,`value_id`,`store_id`),
DROP COLUMN `row_id`;

-- Gallery
Expand All @@ -382,7 +384,8 @@ ALTER TABLE `catalog_product_entity_tier_price`
ADD CONSTRAINT `UNQ_E8AB433B9ACB00343ABB312AD2FAB087` UNIQUE KEY (`entity_id`,`all_groups`,`customer_group_id`,`qty`,`website_id`),
DROP COLUMN `row_id`;

-- Entity
-- Entity For some reason, FOREIGN KEY `CAT_PRD_SPR_ATTR_PRD_ID_CAT_PRD_ENTT_ROW_ID was not removed. We need to run it again.
-- ALTER TABLE `catalog_product_super_attribute` DROP FOREIGN KEY `CAT_PRD_SPR_ATTR_PRD_ID_CAT_PRD_ENTT_ROW_ID`;
SET FOREIGN_KEY_CHECKS = 0;
ALTER TABLE `catalog_product_entity`
DROP INDEX `CATALOG_PRODUCT_ENTITY_ENTITY_ID_CREATED_IN_UPDATED_IN`,
Expand Down Expand Up @@ -463,11 +466,13 @@ ALTER TABLE `catalog_product_website`

ALTER TABLE `catalog_url_rewrite_product_category`
DROP FOREIGN KEY `CAT_URL_REWRITE_PRD_CTGR_PRD_ID_SEQUENCE_PRD_SEQUENCE_VAL`,
-- DROP FOREIGN KEY `FK_BB79E64705D7F17FE181F23144528FC8`, -- maybe we have to remove this key instead of the previous one
ADD CONSTRAINT `CAT_URL_REWRITE_PRD_CTGR_PRD_ID_CAT_PRD_ENTT_ENTT_ID` FOREIGN KEY (`product_id`) REFERENCES `catalog_product_entity` (`entity_id`) ON DELETE CASCADE ON UPDATE RESTRICT;

DELETE FROM `cataloginventory_stock_item` WHERE `product_id` NOT IN (SELECT `entity_id` FROM `catalog_product_entity`);
ALTER TABLE `cataloginventory_stock_item`
DROP FOREIGN KEY `CATINV_STOCK_ITEM_PRD_ID_SEQUENCE_PRD_SEQUENCE_VAL`,
-- DROP FOREIGN KEY `CATINV_STOCK_ITEM_STOCK_ID_CATINV_STOCK_STOCK_ID`, -- maybe we have to remove this key instead of the previous one
ADD CONSTRAINT `CATINV_STOCK_ITEM_PRD_ID_CAT_PRD_ENTT_ENTT_ID` FOREIGN KEY (`product_id`) REFERENCES `catalog_product_entity` (`entity_id`) ON DELETE CASCADE ON UPDATE RESTRICT;

ALTER TABLE `product_alert_price`
Expand Down Expand Up @@ -506,4 +511,14 @@ ALTER TABLE `wishlist_item`
DROP FOREIGN KEY `WISHLIST_ITEM_PRODUCT_ID_SEQUENCE_PRODUCT_SEQUENCE_VALUE`,
ADD CONSTRAINT `WISHLIST_ITEM_PRODUCT_ID_CATALOG_PRODUCT_ENTITY_ENTITY_ID` FOREIGN KEY (`product_id`) REFERENCES `catalog_product_entity` (`entity_id`) ON DELETE CASCADE ON UPDATE RESTRICT;

-- DROP FOREIGN KEY on the sequence table
ALTER TABLE `magento_targetrule_product`
DROP FOREIGN KEY `MAGENTO_TARGETRULE_PRD_PRD_ID_SEQUENCE_PRD_SEQUENCE_VAL`;

ALTER TABLE `email_catalog`
DROP FOREIGN KEY `EMAIL_CATALOG_PRODUCT_ID_SEQUENCE_PRODUCT_SEQUENCE_VALUE`;

ALTER TABLE `magento_giftregistry_item`
DROP FOREIGN KEY `MAGENTO_GIFTREGISTRY_ITEM_PRD_ID_SEQUENCE_PRD_SEQUENCE_VAL`;

DROP TABLE `sequence_product_bundle_selection`,`sequence_product_bundle_option`,`sequence_product`;
30 changes: 29 additions & 1 deletion scripts/salesrule.sql
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,25 @@ ALTER TABLE `salesrule_product_attribute`
DROP COLUMN `row_id`;

-- Salesrule


ALTER TABLE `amasty_ampromo_rule`
DROP FOREIGN KEY `AMASTY_AMPROMO_RULE_SALESRULE_ID_SALESRULE_ROW_ID`;
ALTER TABLE `amasty_amrules_rule`
DROP FOREIGN KEY `AMASTY_AMRULES_RULE_SALESRULE_ID_SALESRULE_ROW_ID`;
ALTER TABLE `amasty_amrules_usage_limit`
DROP FOREIGN KEY `AMASTY_AMRULES_USAGE_LIMIT_SALESRULE_ID_SALESRULE_ROW_ID`;
ALTER TABLE `salesrule_label`
DROP FOREIGN KEY `SALESRULE_LABEL_ROW_ID_SALESRULE_ROW_ID`;
ALTER TABLE `amasty_free_gift_timer_timer_data`
DROP FOREIGN KEY `AMASTY_FREE_GIFT_TIMER_TIMER_DATA_SALESRULE_ID_SALESRULE_ROW_ID`;
ALTER TABLE `amasty_amrules_usage_counter`
DROP FOREIGN KEY `AMASTY_AMRULES_USAGE_COUNTER_SALESRULE_ID_SALESRULE_RULE_ID`;
ALTER TABLE `amasty_banners_lite_banner_data`
DROP FOREIGN KEY `AMASTY_BANNERS_LITE_BANNER_DATA_SALESRULE_ID_SALESRULE_ROW_ID`;
ALTER TABLE `amasty_banners_lite_rule`
DROP FOREIGN KEY `AMASTY_BANNERS_LITE_RULE_SALESRULE_ID_SALESRULE_ROW_ID`;

ALTER TABLE `salesrule`
DROP FOREIGN KEY `SALESRULE_RULE_ID_SEQUENCE_SALESRULE_SEQUENCE_VALUE`,
DROP COLUMN `row_id`,
Expand All @@ -86,15 +105,24 @@ ALTER TABLE `salesrule_product_attribute`
-- ----------------
-- Drop sequence --
-- ----------------
-- We need to clean up the salesrule_coupon table before dropping the sequence_salesrule table
DELETE FROM salesrule_coupon
WHERE rule_id NOT IN (SELECT rule_id FROM salesrule);

ALTER TABLE `salesrule_coupon`
DROP FOREIGN KEY `SALESRULE_COUPON_RULE_ID_SEQUENCE_SALESRULE_SEQUENCE_VALUE`,
ADD CONSTRAINT `SALESRULE_COUPON_RULE_ID_SALESRULE_RULE_ID` FOREIGN KEY (`rule_id`) REFERENCES `salesrule` (`rule_id`);
ALTER TABLE `salesrule_customer`
DROP FOREIGN KEY `SALESRULE_CUSTOMER_RULE_ID_SEQUENCE_SALESRULE_SEQUENCE_VALUE`,
ADD CONSTRAINT `SALESRULE_CUSTOMER_RULE_ID_SALESRULE_RULE_ID` FOREIGN KEY (`rule_id`) REFERENCES `salesrule` (`rule_id`);

ALTER TABLE `salesrule_label`
CHANGE `row_id` `rule_id` INT(10) UNSIGNED NOT NULL COMMENT 'Rule ID';

DELETE FROM salesrule_label
WHERE rule_id NOT IN (SELECT rule_id FROM salesrule);

ALTER TABLE `salesrule_label`
DROP FOREIGN KEY `SALESRULE_LABEL_RULE_ID_SEQUENCE_SALESRULE_SEQUENCE_VALUE`,
ADD CONSTRAINT `SALESRULE_LABEL_RULE_ID_SALESRULE_RULE_ID` FOREIGN KEY (`rule_id`) REFERENCES `salesrule` (`rule_id`);

DROP TABLE `sequence_salesrule`;