14.19 InnoDB 문제 해결
InnoDB
의 문제 해결에는 다음의 일반적인 지침이 적용됩니다.
조작이 실패하거나 버그가 의심되는 경우는 MySQL 서버의 오류 로그를 확인하십시오 ( 섹션 5.2.2 "오류 로그" 를 참조하십시오).
그 실패가 교착 상태 에 관련되는 경우,
InnoDB
의 각 교착 상태에 대한 자세한 내용은 MySQL 서버의 오류 로그에 기록되도록innodb_print_all_deadlocks
옵션이 활성화 된 상태에서 실행합니다.InnoDB
데이터 사전 문제는CREATE TABLE
문에 실패 (고립 된 테이블 파일).InnoDB
파일을 열 수없는 및 "지정된 경로를 찾을 수 없습니다"오류가 있습니다. 이러한 종류의 문제 나 오류에 대해서는 섹션 14.19.3 "InnoDB 데이터 사전 작업 문제 해결" 을 참조하십시오.문제 해결시 일반적으로 mysqld_safe를 통해 또는 Windows 서비스로서가 아니라 명령 프롬프트에서 MySQL 서버를 실행하는 것이 좋습니다. 이를 통해 mysqld가 콘솔에 출력 할 내용을 확인할 수 있으므로, 무엇이 발생하고 있는지를보다 정확하게 파악할 수 있습니다. Windows에서는 출력이 콘솔 창에되도록
--console
옵션으로 mysqld를 시작합니다.문제에 대한 정보를 얻으려면,
InnoDB
모니터를 활성화합니다 ( 섹션 14.15 "InnoDB 모니터" 를 참조하십시오). 그 문제가 성능에 관한거나 서버가 중단 된 것처럼 보일 수는InnoDB
의 내부 상태에 대한 정보를 출력하기 위해 표준 모니터를 사용하도록하십시오. 문제가 잠금에 관한 것 인 경우에는 잠금 모니터를 사용합니다. 문제가 테이블의 작성이나 기타 데이터 사전 작업중인 것 인 경우는InnoDB
내부 데이터 사전의 내용을 출력하기 위해 테이블 모니터를 사용합니다. 테이블 스페이스 정보를 표시하려면 테이블 스페이스 모니터를 사용합니다.InnoDB
는 다음의 조건 하에서InnoDB
표준 모니터 출력을 일시적으로 활성화합니다.긴 세마포어 대기
InnoDB
버퍼 풀에 여유 블록을 찾을 수 없습니다잠금 힙 또는 적응 해시 인덱스에 의해 버퍼 풀의 67 %를 넘는 공간을 차지하게되어있다
테이블이 손상되었다고 생각되면 그 테이블에 대해
CHECK TABLE
을 실행합니다.