반응형
MariaDB에서 Mysql로 마이그레이션 - 중복 제약 조건 이름
MariaDB 데이터베이스를 MySQL로 마이그레이션하려고 합니다.이 작업을 위해 다음 명령을 작성했습니다.mysqldump
MySQL로 Import를 시도하고 있습니다.(이는 공식 도커 컨테이너를 사용하여 이루어집니다.)mysql:latest
).
MySQL로 Import할 때 다음 오류가 발생합니다.
ERROR 3822 (HY000) at line 172: Duplicate check constraint name 'CONSTRAINT_1'.
제가 봤을 때mysqldump
왜 이런 일이 일어나는지 알 것 같아요데이터베이스의 모든 부울 열에는 다음과 같은 제약 조건이 있습니다.
CONSTRAINT `CONSTRAINT_1` CHECK (`bool_col_1` in (0,1))
CONSTRAINT `CONSTRAINT_2` CHECK (`bool_col_2` in (0,1))
CONSTRAINT `CONSTRAINT_3` CHECK (`bool_col_3` in (0,1))
이러한 제약은 내가 명시적으로 만든 것이 아니라 Flask-SQ에 의해 암묵적으로 만들어졌다.Lalchemy(내 생각엔)
제약 조건 이름이 다음 문자로 시작하는 방법에 주목하십시오.CONSTRAINT_1
문제는 각 테이블이 제약조건 이름을 다음부터 증가시키기 시작한다는 것입니다.CONSTRAINT_1
따라서 두 번째 테이블을 작성하려고 하면 오류가 발생합니다.
데이터베이스의 무결성을 유지하면서 이 문제를 가장 잘 해결할 수 있는 방법을 알고 싶습니다.
언급URL : https://stackoverflow.com/questions/62046913/migrating-from-mariadb-to-mysql-duplicate-constraint-name
반응형
'source' 카테고리의 다른 글
Panda Datetime 컬럼에서 월과 년만 추출 (0) | 2022.10.29 |
---|---|
AWS RDS 읽기 복제품:몇 개의 테이블과 열의 복제를 방지하려면 어떻게 해야 합니까? (0) | 2022.10.29 |
Python 클래스를 동적으로 로드하는 방법 (0) | 2022.10.20 |
팬더 인덱스 컬럼 제목 또는 이름 (0) | 2022.10.20 |
mysql/mariadb(또는 amazon orora)에서의 멀티 테넌트(Multi-tenant) 접근방식의 실용적인 구현 (0) | 2022.10.20 |