[완료]Mysql C-API 오류 "Bad handshake"

ssik425의 이미지

Mysql C-api를 이용하여 제작된 CGI가 있습니다.

mysql 버전은 4.1.20

O/S : Centos 4.4

위와같은 환경에서 동작하고 있는데 얼마전부터 이상한

메시지가 출력됩니다. "Bad handshake"라는 output을 내고는 연결조차 되지 않네요...

대체 무슨 이유인지 mysql_error조차 실행이 되지 않고

mysql_real_connect 함수 자체에서 위와같이 출력합니다.

아무리 검색을 해보아도 이유를 알수가 없네요...

작성된 코드는 다음과 같이 진행됩니다.

MYSQL mysql;

mysql_init(&mysql);

if(!mysql_real_connect(&mysql, "localhost", "aaa","bbb", "ccc", 0,0) )
{
printf("err:%s", mysql_error(&mysql));
return 0;
}

위와같이 연결을 하게 되는데 연결은 되지 않고 mysql_real_connect에서

"Bad handshake"를 뱉고는 죽어버립니다.

이런 경우 보셨나요?

ssik425의 이미지

설치된 mysql rpm 위에 2번인가 update를 했었습니다.

그로인해 라이브러리가 예전 버전을 링크하면서 발생하는 문제였던것 같습니다.

아무리 찾아도 이에 대한 자료를 찾을 수 가 없네요...

다른 서버에서 컴파일해서 가져오면 문제가 없네요..

테스트를 해보지는 않았지만 mysql, mysqlclient 등을 모두 제거하고

설치를 다시하면 문제가 없을 듯합니다.

개발자들의 궁극적 비전은 ?