MySQL 데이터베이스 테이블과 innoDB 테이블이 있습니다. 내가 연결하는 PHP 페이지가, 테이블을 잠급니다, 몇 가지 업데이 트를 누른 다음 테이블의 잠금을 해제. PHP 페이지가 wamp를 통해 Apache와 함께 제공됩니다.PHP 충돌 후 mysql 테이블 잠김
PHP 페이지가 파일을 데이터베이스에 업로드합니다. 필자는 PHP에 할당 된 메모리보다 큰 크기의 파일을 업로드하여 시스템 충돌을 시뮬레이션하기로 결정했습니다. 이로 인해 확실히 18874368 바이트의 메모리 크기가 소모되었습니다 (6176754 바이트 할당 시도). 그 후, 갱신 중에 잠긴 테이블은 여전히 잠겨 있습니다.
이 오류가 발생한 후 테이블에 액세스하려고하면 오류가 발생합니다. 'a'테이블이 LOCK 테이블로 잠겨 있지 않습니다. SQL 문을 띄우고 잠긴 테이블에서 선택하려고 시도하기 때문에 잠금 문제라는 것을 알고 테이블이 잠길 때와 똑같이 기다립니다. 그런 다음 Apache 프로세스를 종료하면 SQL 프롬프트에서 실행하려고 시도한 문이 마침내 실행됩니다. 내 생각 엔 아파치 프로세스를 죽일 때 MySQL은 연결이 끊어지기 때문에 테이블 잠금을 해제해야한다는 것을 깨닫는다.
어떤 아이디어 ??
오류 처리와 함께 치명적인 오류는 관리 할 수 없습니다! – RobertPitt
나의 실수 - 나는 셧다운 기능을 생각하고 있었다. 답변 됨. – qbert220