> 데이터 베이스 > MySQL 튜토리얼 > MySQL 가져오기 오류: 테이블스페이스가 있지만 테이블이 없습니까?

MySQL 가져오기 오류: 테이블스페이스가 있지만 테이블이 없습니까?

Barbara Streisand
풀어 주다: 2024-12-01 13:07:10
원래의
1019명이 탐색했습니다.

MySQL Import Error: Tablespace Exists But Table Doesn't?

오류: 테이블용 테이블스페이스가 존재합니다. IMPORT 전에 테이블스페이스를 삭제하십시오.

질문:

MySQL 사용자가 이전에 존재했던 테이블을 생성하려고 시도하는 중에 오류가 발생했습니다. 오류 메시지는 테이블의 테이블스페이스가 이미 존재하며 가져오기 전에 이를 삭제해야 함을 나타냅니다. 그러나 테이블을 삭제하거나 테이블스페이스를 삭제하려고 하면 테이블이 존재하지 않는다는 오류 메시지가 나타납니다. 이 문제의 원인은 무엇입니까?

답변:

이 오류는 일반적으로 'innodb_file_per_table' 모드에서 실행하고 '테이블 공간이 가득 참' 오류가 발생할 때 발생합니다. 데이터베이스 서버의 테이블스페이스는 기본적으로 제한될 수 있는 innodb_data_file_path 설정으로 정의됩니다.

이러한 경우 파일이 있는 OS 디렉터리에 동반 .frm 파일 없이 고아 .ibd 파일이 존재할 가능성이 높습니다. 테이블별로 저장됩니다(일반적으로 /var/lib/mysql 또는 /usr/local/var/mysql).

해결책:

문제 해결 방법:

  1. 고립된 .ibd 파일을 찾습니다. 테이블당 파일이 저장된 디렉터리에 있습니다.
  2. .ibd 파일을 이동하세요. 안전한 임시 위치(예: /tmp/mysql_orphans)에 저장합니다.

예:

$ ls /var/lib/mysql

table1.frm
table1.idb
table2.frm
table2.idb
table3.idb  <-- problem table, no table3.frm
table4.frm
table4.idb

$ mkdir /tmp/mysql_orphans
$ mv /var/lib/mysql/table3.ibd /tmp/mysql_orphans/
로그인 후 복사

참고: 장기 실행 쿼리 또는 잠긴 테이블과 같은 모든 기본 원인이 해결되어 추가 고아를 방지합니다. .ibd 파일이 생성되지 않습니다.

위 내용은 MySQL 가져오기 오류: 테이블스페이스가 있지만 테이블이 없습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿