Open Mon - Fri 10:00-17:00
Status Contact Us Schedule a Call > Click Here

마젠토 1에서 마젠토 2로 업그레이드 및 이전 작업

마젠토 코어 개발팀이 마젠토 1의 기술 지원을 종료하기 적어도 18개월 전에 공지를 한다고 했지만, 여전히 마이그레이션을 사전에 준비하는게 좋습니다.

이미 많은 고객사들이 마젠토 1에서 마젠토 2로 마이그레이션을 했거나 진행 중이거나 준비 중입니다.

마젠토 1에서 마젠토 2로 마이그레이션을 하기 전에 고려할 사항들은 다음과 같습니다.

  1. 웹사이트의 파악 – 마젠토 2로 마이그레이션을 할 때 유지하거나 삭제할 기능 목록 등을 사전에 미리 작성하여 검토하고 분석하셔야 합니다. 또한 기존 Theme과 모듈 등을 마젠토 2에서 사용할 수 없기 때문에, 이 부분에 대한 준비도 함께 하셔야 합니다.
  2. 마젠토 2로 마이그레이션 하기 전 마젠토 1의 데이타베이스, 파일, 폴더 등 전체 백업을 진행하셔야 합니다.
  3. 마젠토 1 라이브 웹사이트에서 바로 마젠토 2로 마이그레이션 작업을 진행하시지 마세요. 백업 데이타와 별도로 별도의 개발 환경에 다시 한번 라이브 사이트를 복제 한 다음, 작업을 진행해야 합니다. 즉 라이브 사이트와 백업 데이터, 그리고 라이브 사이트의 복제 사이트가 준비되어야 합니다.
  4. 호환성 확인 작업 – 커스텀 개발된 부분 등에 대해 호환성 여부를 사전에 확인하고 준비해야 합니다. 실제 고객사 중 내부 ERP와 연동되는 스크립트의 호환성 확인 작업을 제대로 안하는 바람에 마이그레이션 된 데이타베이스가 손상된 경우가 있었고, 복구 작업에 많은 노력과 시간이 투자되었습니다.
  5. 성능 향상을 위한 작업 – 마젠토 2 인스톨 후 config.xml 파일의 “<direct_document_copy>1</direct_document_copy>”을 설정합니다.

마젠토 1에서 마젠토 2로 마이그레이션 작업엔 4단계 진행이 필요합니다.

  1. Theme 새로 개발 및 기존 Theme 마이그레이션
  2. 익스텐션 마이그레이션
  3. 커스텀 기능 / 개발 마이그레이션
  4. 데이터 마이그레이션
THEME 마이그레이션

마젠토 1의 Theme을 마젠토 2에서 바로 사용하는건 불가능합니다. 따라서 마젠토 2에 대응하는 새로운 Theme을 개발 및 준비하셔야 합니다.

익스텐션 마이그레이션

마젠토 1의 익스텐션 또한 마젠토 2와 호환되지 않습니다. 사용중인 익스텐션들의 개발사 페이지를 통해 해당 익스텐션들이 마젠토 2 버젼에 대응하는 버젼이 준비되어 있는지 확인해야 합니다. 만약 준비되어 있지 않다면, 해당 익스텐션과 유사한 기능을 가진 마젠토 2 지원 익스텐션을 준비해야 합니다.

커스텀 기능 / 개발 마이그레이션

마젠토 1에서 사용된 커스텀 코드들은 대부분 마젠토 2와 호환이 됩니다. 또한 마이그레이션 프로세스를 도와주는 코드 마이그레이션 툴킷이 있습니다. 마젠토 1과 마젠토 2, 두 플랫폼에 구조적인 차이가 있기 때문에 해당 코드들이 마젠토 2에서 정상적으로 작동하기 위해서는 코드 리뷰가 반드시 필요하고 경우에 따라 추가적인 작업이 필요할 수 있습니다.

데이터 마이그레이션

데이터 마이그레이션 작업은 제일 마지막으로 진행하면 됩니다. 마젠토 2의 데이터 마이그레이션 툴을 이용하여 제품, 주문, 카테고리, 고객 데이터 등을 쉽게 마젠토 2로 마이그레이션 할 수 있습니다.

데이터 마이그레이션의 단계별 가이드는 다음과 같니다.

Composer를 통해 데이터 마이그레이션 툴 설치

이 툴을 설치하기 전에 반드시 해당 마이그레이션 툴이 설치된 마젠토 2.X 버젼과 정확히 일치하는지 확인을 합니다. 예를 들어 마젠토 2.3 버젼인 경우 데이터 마이그레이션 툴의 버전 또한 2.3이어야 합니다. 마젠토 버젼을 모를 경우 SSH 터미널을 통해 마젠토 2의 루트 디렉토리로 이동 후 아래 명령어를 입력하면 설치된 마젠토 버젼을 확인하실 수 있습니다.

php bin/magento --version

마젠토 2의 상세 버젼을 확인하였다면, 마젠토 2의 루트 디렉토리의 composer.json 파일에서 데이터 마이그레이션 툴 패키지의 위치를 추가합니다. 아래 명령어를 입력합니다.

composer config repositories.magento composer https://repo.magento.com
Composer require magento/data-migration-tool:

여기서 은 데이터 마이그레이션 툴의 버젼입니다. 예를 들어 마젠토 2.3 용 데이터 마이그레이션 툴인 경우 을 2.3으로 대체하면 됩니다.

Composer require magento/data-migration-tool:2.3

Authentication Keys를 입력합니다. 이 키는 Magento 마켓 플레이스에 로그인 후 My Access Keys에서 확인 가능합니다. 보통 Public Key는 유저네임이고 Private Key는 패스워드입니다. 이 키는 새로 만들 수도 있습니다.

데이터 마이그레이션 툴 Configuration – 설치가 완료되면, 데이터 마이그레이션 툴의 매핑 및 구성 파일들을 포함하는 디렉토리를 찾을 수 있습니다.

/vendor/magento/data-migration-tool/etc/ce-to-ee

마젠토 1 커뮤니티 에디션에서 마젠토 2 엔터프라이즈 에디션으로 마이그레이션 하기 위한 구성 및 스크립트 또한 포함되어 있습니다. 마젠토 1 엔터프라이즈 에디션에서 마젠토 2 엔터프라이즈 에디션으로 데이터 마이그레이션을 할 경우 아래 명령어를 사용하면 됩니다.

/vendor/magento/data-migration-tool/etc/ee-to-ee

데이터 및 설정을 마이그레이션 하기 전에 관련 디렉토리에 config.xml 파일을 생성합니다.

<source><database host=“localhost” name=“Magento1-DB-name” user=“DB-username” password=“DB-password” /></source><destination><database host=“localhost” name=”Magento2-DB-name” user=“DB-username” password=“DB-password” /></destination>

</options><source> – 마젠토 1의 데이터베이스 정보
<destination> – 마젠토 2의 관련 정보
<crypt_key> – 마젠토 1의 루트 디렉토리/app/etc/local.xml 파일에서 <key> 태그를 확인할 수 있습니다.

마이그레이션 세팅 – 마젠토 1에서 마젠토 2로 데이터 마이그레이션 툴을 사용하여 설정 값들 마이그레이션 합니다. 웹사이트 설정 정보, 쇼핑몰, 세금 및 페이먼트 그리고 쉽핑 등의 설정 데이터 등등의 설정 데이타를 먼저 마이그레이션해야 합니다. SSH 터미널에서 마젠토 2 루트 디렉토리로 이동 후 아래 명령어를 살행합니다.

php bin/magento migrate:settings --reset

여기서 config.xml의 경로는 vendor/magento/data-migration-tool/etc/ce-to-ee/마젠토 1.x 버전/config.xml 입니다. 마이그레이션이 완료되면 메시지가 나옵니다.

데이터 마이그레이션 – 상품 데이터, 주문 데이터, Wish lists, 카테고리, 고객 데이터, 레이팅 데이터 등등의 마이그레이션은 아래 명령어를 입력해주세요.

php bin/magento migration:data --reset

마이그레이션 완료 후 마젠토 2가 제대로 작동하는지 테스트하면 됩니다. 마젠토 1에서 마젠토 2로 마이그레이션 작업은 많은 수작업이 필요하기 때문에 쉽지는 않습니다. 중간 중간 과정에서 발생하는 에러들에 디버깅을 하면서 작업이 진행될 것입니다.

마이그레이션 작업 전 마젠토 2 기술 문서들을 충분히 숙지하고 진행하시길 바랍니다.

Leave a Reply