대학교 학과 홈페이지의 서버인데요,
언젠가부터 db오류가 나서, (db를 정상종료 시키더라도) 서버를 리부팅하기만 하면 db 오류가 나면서 열리지 않습니다. mysql을 종료시키고 (서비스를 제대로 종료할 수 없었다고 나오는 것을 그냥 강제 종료시킵니다), 다시 load한 다음에 mysqlcheck같은 툴로 repair를 시도하면 두시간 동안 무언가 뭘 하는지 알 수 없는 작업을 하다가 db가 살아납니다. 무얼하는지 알 수 없다고 하는 것은, auto-repair같은 명령어를 줘도 그게 repair 작업을 하는 것 같지는 않은데(table 점검하는 경과 메시지가 표시되지 않고 프롬프트만 깜박거립니다) 어쩐 일인지 두시간정도 지나고 나면 db가 살아나는 것이 이상하다는 것입니다. (user/pwd를 잘못된 형식으로 입력하고 명령어를 준 일이 있었는데 db에 접근할 수 없었다는 메시지가 두시간 후에 출력됐는데도 db는 살아났습니다)
분명 가만히 놔두면 시간이 많이 지나도 db가 살아나지는 않습니다 (당연하겠죠?;;)
일단 불행 중 다행으로 그렇게라도 db가 살아나니까 다행인데, 문제는 db가 매우 느리다는 것입니다. mysql로 돌아가는 db가 2개가 있는데, 하나는 문제 없는데 한쪽은 사이트에서 로딩만 하려고 하면 10초가량 기다려야만 로딩이 되고, 그렇게 해서 접속해서 쓰는 동안은, 빠를때는 꽤 빠른데 중간에 10초 delay가 걸리기는 일이 간헐적으로 발생합니다.
(이렇게 delay가 생길때 mysql load monitor graph 수치가 상승하면서 힘들어하는 모습을 보입니다)
어떤 문제 가능성이 있는지 도움말씀을 구하고자 합니다.
도움 주시면 감사하겠습니다.
ps: 새벽에 mysql도 한번 재설치를 해볼까 하는데, 도움이 되는 일인지는 잘 모르겠네요. 그리고 지금 옛날버전(4.0버전)을 쓰고 있는데, 4.1이나 5버전으로의 이전이 도움이 될까요? 호환사항을 잘 숙지하고 있지 못해서 나름 장벽이 있는 일인데 문제해결에 도움이 될지 잘 모르겠네요.
(phpschool에 올렸던 글인데, 답을 얻지 못해서 이곳에도 올려봅니다)
|