2012-06-14 5 views
2

최근 며칠 동안 수동 연결이 정상적으로 작동하는 동안 RDS에서 MySQL에 연결할 수없는 PHP의 이상한 문제가 발생합니다.PHP는 RDS에서 MySQL에 연결할 수 없습니다.

그래서 나는 EC2에서 호스팅되는 우리 서버에 앉아있는 여러 PHP 스크립트를 가지고 있으며,이 스크립트는 클라이언트가 RDS에있는 mysql 서버와 통신하기 위해 호출합니다. 스크립트는 연결 오류가 발생하면 전자 메일 알림을 보내도록 설정되어 있습니다.

최근 며칠 동안 스크립트에서 수천 개의 오류 전자 메일을받습니다. 처음 몇 일 동안 서버 호스트가 인식되지 않는다는 단순한 오류가 있었지만 주소가 정확하다고 확신합니다. 그리고 이제 오류는 거의 "호스트 XXX는 많은 연결 오류로 인해 차단되었습니다. mysqladmin flush-hosts ...로 차단 해제"라고 말합니다. 호스트를 플러시하면 잠시 후 오류가 다시 발생합니다.

가장 혼란스러운 점은 문제를 재현 할 수 없다는 것입니다. 명령 줄을 통해 테스트 PHP 스크립트를 통해 내 EC2 서버에서 RDS 서버에 연결을 시도 ... 그들은 모두 작동합니다! 수동으로 오류 전자 메일을 보내는 스크립트를 호출하는 경우에도 작동합니다. RDS 모니터를 보면 모든 스탯은 정상적으로 보였으며 CPU는 약 50 % 정도 튀고 하드 드라이브 공간도 충분합니다.

지금 당장은 완전히 혼란 스럽습니다. 누군가이 문제를 해결하는 방법에 대한 통찰력을 제공 할 수 있습니까? 지금 어디서 봐야할지 모르겠다. ...

+0

아마존에 전화하셨습니까? –

+0

설명서를 읽었습니까? 동일한 사용자/passwd 자격 증명으로 연결을 테스트하고 있습니까? http://dev.mysql.com/doc/refman/5.6/en/blocked-host.html –

+0

@Paul 아니요 아직 Amazon을 부르지 않았으며 포럼에 게시했지만 실제로보고 있지 않습니다. –

답변

0

mysql 서버와의 연결을 점검하고 오류를 점검해야한다. 그 때까지는 "플러시 호스트"를 cron하여 임시로 문제를 해결할 수 있습니다. 임시 수정으로 만 사용해야합니다.

+0

폴 (Paul)의 답변 주셔서 감사합니다. 오랜 시간이 지나면 RDS를 확장하여 문제가 해결되었습니다. 내 생각에 이것은 아마존 측의 버그 다. 실제로는 문서화되지 않았지만 그 원인은 신비 스럽다. 어쨌든 나는이 질문을 끝내기 위해 답을 받아 들일 것입니다. –

관련 문제