programing

MySQL 8에서 Maria로 대용량 데이터베이스 마이그레이션DB

procenter 2022. 10. 20. 21:51
반응형

MySQL 8에서 Maria로 대용량 데이터베이스 마이그레이션DB

대규모 데이터베이스를 MYSQL 8에서 MariaDB로 이행하기 위한 솔루션이 필요합니다(임의의 버전, 바람직하게는 10.4).
저는 이미 MariaDB 사이트를 검색했고 구글을 검색했지만 아직 아무것도 찾지 못했습니다.
안타깝게도 mysqldump를 실행하는 솔루션은 마이그레이션해야 하는 데이터베이스가 최소 40GB(물리 Disk 공간) 크기이기 때문에 실현 가능성이 매우 낮습니다.

일반적으로 MariaDB는 MySQL을 대체하기 위해 설계되었습니다.

MySQL 8.0 이후로는 MySQL을 MariaDB로 대체하고 이전과 동일한 데이터 파일을 사용하는 것이 더 이상 불가능합니다.

MySQL 8.0 이상에서 MariaDB로 이동하는 유일한 방법은mysqldump.

참조에 대해서는, https://mariadb.com/kb/en/upgrading-from-mysql-to-mariadb/ 를 참조해 주세요.

MySQL 8.0 이상을 사용하는 경우 mysqldump를 사용하여 데이터베이스를 MariaDB로 이동해야 합니다.

또 다른 솔루션은 MySQL 8.0에서 MySQL 5.7로 다운그레이드하는 것입니다.하지만 이것도 가능하지 않습니다.

MySQL 8.0에서 MySQL 5.7로의 다운그레이드 또는 MySQL 8.0 릴리스에서 이전 MySQL 8.0 릴리스로의 다운그레이드는 지원되지 않습니다.지원되는 유일한 대안은 업그레이드 전에 수행한 백업을 복원하는 것입니다.따라서 업그레이드 프로세스를 시작하기 전에 데이터를 백업해야 합니다.

https://dev.mysql.com/doc/refman/8.0/en/downgrading.html

잠시 시간을 내셔야 할 것 같아요.mysqldump.

미안 m8.

플랜 A:

mysqldump -h mysql_8_host ... | mysql -h mariadb_10_host ...

그러면 160GB라고 하는 중간 파일이 인스턴스화되는 것을 방지할 수 있습니다.

플랜 B:

mysqldump -h mysql_8_host ... | gzip >dump.gz
gunzip <dump.gz | mysql -h mariadb_10_host ... 

압축된 파일은 40GB 미만일 수 있습니다.우선, 그것은 인덱스를 가지고 있지 않다.(두 번째 단계에서 재구축됩니다).

어느 쪽이든...

두 버전 간에 호환되지 않을 수 있습니다.두 mysql의 파라미터를 확인합니다.mysqldump하위 호환성 옵션이 있을 수 있으며 mariadb의mysqldump8.0 입력에 대응할 수 있는 경우가 있습니다.

언급URL : https://stackoverflow.com/questions/62573533/migrate-large-database-from-mysql-8-to-mariadb

반응형