MySQL 용량 초과로 인한 에러
2013-11-07 오전 10시경, J 고객님이 주신 문의 입니다.
Question
종종 DB 접속 오류 메시지가 뜨면서 서버 내 사이트 접속이 안됩니다.
그때마다 서버 재부팅 요청을 하면 해결 되었는데 이번 오류 현상은 해결이 안되네요.
원인이 뭘까요? 지난번 비슷한 문제로 메모리를 증설하는 등 조치를 취했는데도 이런 문제가 발생하네요.
Answer
고객님 이용 중인 MySQL Error log를 확인해보니 Disk에 여유 공간이 없었습니다.
/usr 파티션이 100% 사용 중인 상태라 에러가 발생된 것 입니다.
우선 용량을 많이 차지하는 MySQL Bin log들을 몇 개 비워드려 정상 구동될 수 있도록 용량 확보해드렸습니다.
추가적으로 Apach log도 확인 후 비워주시면 좀 더 확보가 가능할 것으로 보입니다.
고객님 파티션의 /usr/local/ 사용량을 참고해보시기 바랍니다.
Tip
MyServer 사이즈, 쿼리(Query)문을 이용해 주기적으로 관리해보세요!
Database 사용량 체크 쿼리문
SELECT count(*) NUM_OF_TABLE, table_schema,concat(round(sum(table_rows)/1000000,2),'M') rows, concat(round(sum(data_length)/(1024*1024*1024),2),'G') DATA, concat(round(sum(index_length)/(1024*1024*1024),2),'G') idx, concat(round(sum(data_length+index_length)/(1024*1024*1024),2),'G') total_size, round(sum(index_length)/sum(data_length),2) idxfrac FROM information_schema.TABLES GROUP BY table_schema ORDER BY sum(data_length+index_length) DESC LIMIT 10; |
Table 사용량 체크 쿼리문
SELECT table_name, table_rows, round(data_length/(1024*1024),2) as 'DATA_SIZE(MB)', round(index_length/(1024*1024),2) as 'INDEX_SIZE(MB)' FROM information_schema.TABLES where table_schema = '데이터베이스이름' GROUP BY table_name ORDER BY data_length DESC LIMIT 10; |
'서버운영 노트' 카테고리의 다른 글
웹 서버 점검과 보안 (1) | 2013.11.22 |
---|---|
클라우드 서버 내 방화벽 포트 허용 (0) | 2013.11.15 |
모바일 게임 제작 업체에게 클라우드란? (0) | 2013.02.07 |
워드프레스 설치도 호스트웨이 클라우드로 쉽게! (0) | 2013.01.28 |
클라우드 보안 이슈, 호스트웨이 하이브리드 클라우드로 해결 (0) | 2013.01.25 |