2014-10-29 2 views
-2

다음은 MySQL 오류 로그입니다. 우리의 응용 프로그램은 초당 10-20 요청을 받고 있지만 매 30 분마다이 오류가 mysql 로그에 나타나며 mysql이 자동으로 중지됩니다. 명확하게Mysql 서버가 자주 다운 됨

2014-10-29 16:52:01 5114 InnoDB: Encountered a problem with file .\ib_logfile1 
2014-10-29 16:52:01 5114 InnoDB: Disk is full. Try to clean the disk to free space. 
2014-10-29 16:52:01 5114 InnoDB: Assertion failure in thread 20756 in file fil0fil.cc  line 5475 
InnoDB: Failing assertion: ret 
InnoDB: We intentionally generate a memory trap. 
InnoDB: Submit a detailed bug report to http://bugs.mysql.com. 
InnoDB: If you get repeated assertion failures or crashes, even 
InnoDB: immediately after the mysqld startup, there may be 
InnoDB: corruption in the InnoDB tablespace. Please refer to 
InnoDB: http://dev.mysql.com/doc/refman/5.6/en/forcing-innodb-recovery.html 
InnoDB: about forcing recovery. 
2014-10-29 16:52:17 44652 [ERROR] C:/Program Files (x86)/MySQL/MySQL Server  5.6/bin\mysqld: Sort aborted: Error writing file  'C:\DOCUME~1\NETWOR~1\LOCALS~1\Temp\MY8E87.tmp' (Errcode: 28 - No space left on device) 
2014-10-29 16:52:21 44652 [ERROR] C:/Program Files (x86)/MySQL/MySQL Server 5.6/bin\mysqld: Sort aborted: Error writing file 'C:\DOCUME~1\NETWOR~1\LOCALS~1\Temp\MY8E86.tmp' (Errcode: 28 - No space left on device) 

답변

1

의 메모리를 늘리

Disk is full. Try to clean the disk to free space. 

하여 오류의 하단 부근이 줄을 로그가 나타납니다 : 나에게

5.6/bin\mysqld: Sort aborted: Error writing file 'C:\DOCUME~1\NETWOR~1\LOCALS~1\Temp\MY8E87.tmp' 
    (Errcode: 28 - No space left on device) 

, 그것은 보인다 정렬 작업을하려고하는 것처럼 (어쩌면 쿼리에서 ORDER BY 절을 수행하기 위해) 하드 드라이브의 임시 공간을 사용하고있는 것입니다. MySQL이 서버에서 NETWORK 사용자의 사용자 임시 디렉토리를 사용하고있는 것처럼 보입니다.

그 디렉토리 C:\DOCUME~1\NETWOR~1\LOCALS~1\Temp\에서 주위에 숨어있는 많은 오래된 정크 임시 파일이 있는지 살펴보고 삭제할 수 있습니다.

나는 추락 후 추적하기가 어려울 것이라고 생각한다; MySQL은 충돌 할 때 임시 공간을 해제합니다.

임시 공간으로 다른 디스크를 사용하도록 MySQL에 지시 할 수 있습니다. 정보는이 부분을 참조하십시오. 당신이 어쩌면 당신의 테이블이 손상되어 당신이 그것을 취소 할 수 있습니다 ... 게시 로그인 오류에 설명되어있어 또 다른 가능성

에게있다 http://dev.mysql.com/doc/refman/5.6/en/temporary-files.html

.

InnoDB: there may be 
InnoDB: corruption in the InnoDB tablespace. Please refer to 
InnoDB: http://dev.mysql.com/doc/refman/5.6/en/forcing-innodb-recovery.html 
+0

당신이 지정한대로 파일 경로를 검사했습니다 (mysql이 모든 파일을 지운 것으로 의심되는 것처럼). 하지만 파일 경로가 C : 드라이브에 있고 C 드라이브에 5GB의 여유 공간이있어 문제가 표시 될 수 있습니다 (Errcode : 28 - 기기에 남은 공간 없음) – user1850594

+0

5GB의 여유 공간 임시 파일은별로 많지 않습니다. 20 또는 30GB 무료로 가져 와서 시스템이 안정화되는지 확인하십시오. –

+0

임시 폴더 변수 TMP 및 TEMP를 400GB의 여유 공간이있는 다른 드라이브로 변경했지만 문제가 계속 발생한다고 제안 했으므로 웃긴 사실은 로그가 변경된 후에도 C : \ DOCUME ~ 1 \ NETWOR ~ 1 \ LOCALS ~ 1 \ Temp \을 다시 보여주고 있다는 것입니다. 다른 환경 변수를 사용자와 시스템 모두에서 교차 검사하여 다른 임시 변수가 선언되지 않았 음을 확인했습니다. – user1850594

1

2014-10-29 16:52:01 5114 InnoDB: Disk is full. Try to clean the disk to free space.

메모리 문제. 잘못된 것으로 보이는 시스템 오류 메시지를 알려줍니다

+0

mysql의 하드 디스크 공간과 메모리 사용량을 모두 확인했는데 둘 다 괜찮습니다. 그리고 innodb ibdata1 파일 크기는 1GB입니다 (문제가 될 수 있습니다. 예를 들어 해결 방법을 알려 주시면됩니다.). – user1850594

관련 문제