내 테이블은 존재하지만 존재하지 않습니다: 이 MySQL 역설을 어떻게 해결합니까?

Linda Hamilton
풀어 주다: 2024-10-28 05:40:02
원래의
747명이 탐색했습니다.

  My Table Exists, But Doesn't: How Do I Resolve This MySQL Paradox?

Schrödinger의 MySQL 테이블: 존재와 비존재의 이야기

MySQL이 테이블이 존재한다고 보고하지만 테이블 생성을 거부하는 역설에 직면하는 것은 당혹스럽습니다. 문제. 이 글의 목적은 슈뢰딩거의 테이블 딜레마 뒤에 숨은 수수께끼를 푸는 것입니다.

원래 문의에서 설명했듯이 CREATE TABLE을 실행하면 "테이블이 이미 존재합니다"라는 오류가 발생하고 DROP TABLE은 "알 수 없는 테이블"을 반환합니다. 이 엄청난 난관으로 인해 사용자는 생성하거나 삭제할 수 없는 무형의 테이블을 갖게 되어 사용자를 당황하게 만듭니다.

대부분의 경우 원인은 분리된 테이블 파일에 있습니다. MySQL은 두 가지 유형의 파일, 즉 테이블 정의용 .frm과 테이블 데이터용 .MYI 및 .MYD(MYISAM) 또는 .ibd(InnoDB)로 데이터를 관리합니다. 이러한 파일 중 하나가 누락되면 테이블은 절반만 구성된 팬텀이 되어 MySQL의 응답에 불일치가 발생합니다.

이 Schrödinger의 테이블 난제를 해결하려면 데이터 디렉터리에서 분리된 파일을 수동으로 찾아 삭제하십시오. InnoDB를 사용하는 경우 .frm 및 .ibd 파일이 모두 존재하는지 확인하세요. 반면 MYISAM 테이블에는 .frm, .MYI 및 .MYD 파일의 완전한 세 개가 필요합니다.

고아 파일이 제거되면 역설이 사라집니다. 테이블은 예상대로 생성되거나 삭제될 수 있습니다. 따라서 이해하기 어려운 슈뢰딩거 테이블이 해결되어 MySQL 영역에서 존재와 비존재가 때때로 복잡한 방식으로 얽힐 수 있음을 보여줍니다.

위 내용은 내 테이블은 존재하지만 존재하지 않습니다: 이 MySQL 역설을 어떻게 해결합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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