mysqldump를 빈 DB로 복원할 때 오류 121
MariaDB 사용자 중 한 명이 mysqldump의 출력을 다른 테이블로 파이프링하는 셸 스크립트를 통해 데이터베이스를 복사하기로 결정했습니다.
이전에 생성되지 않은 데이터베이스에 mysqldump를 복원하면 정상적으로 작동합니다.그러나 데이터베이스를 삭제하고 다시 만든 다음 스크립트를 다시 실행하려고 하면 다음 오류가 발생합니다.
25번 행의 오류 1005 (HY000): 테이블을 만들 수 없습니다
core_dev
.addresses
(errno: 121 "쓰기 또는 업데이트 시 키 중복") mysqdump: 쓰기 시 오류 32를 받았습니다.
SHOW ENGINE INODB 상태는 다음과 같은 통찰력을 제공합니다.
2017-05-3009:34:197f9929fb4b00 테이블에 대한 외래키 제약조건 생성 오류
core_dev
.addresses
. 이름의 외래 키 제약 조건core_dev
.addresses_ibfk_2
이미 존재합니다.(InnoDB는 내부적으로 사용자 정의 제약 조건 이름 앞에 '데이터베이스 이름'을 추가합니다.)InnoDB의 FORENT KEY 시스템 테이블은 MySQL 표준 latin1_swedish_ci colation을 사용하여 제약 조건 이름을 대소문자 구분 없이 저장합니다.이름이 문자 대소문자만 다른 테이블 또는 데이터베이스를 작성할 경우, 제약조건 이름의 충돌이 발생할 수 있습니다.해결 방법: 제약 조건에 고유한 이름을 명시적으로 지정합니다.
그러나 core_dev 데이터베이스는 완전히 비어 있습니다.
MariaDB [(없음)]> SHOW TABLES IN core_dev; 빈 세트 (0.01초)
무엇이 문제일까요?다른 MariaDB 10.1 서버에서 이 문제를 복제할 수 없습니다.유일한 차이점은 이 특정한 것이 센트에서 실행되고 있다는 것입니다.OS 6, 나머지는 CentOS 7에 있습니다.
언급URL : https://stackoverflow.com/questions/43761986/errno-121-on-restoring-mysqldump-to-empty-db
'programing' 카테고리의 다른 글
별 다섯 개를 보여주는 Rating Bar를 만드는 방법 (0) | 2023.09.27 |
---|---|
nodejs가 있는 Mariasql이 작동하지 않습니다. (0) | 2023.09.27 |
10진수(12,2) 유형의 데이터베이스 테이블 필드에 데이터 삽입 (0) | 2023.09.27 |
문자열이 유효한 16진수 색상 표현인지 확인하는 방법은 무엇입니까? (0) | 2023.09.27 |
ajax가 servlet에서 보낸 json을 읽는 방법 (0) | 2023.09.27 |