PHP2011. 5. 10. 11:41

JQGrid를 사용하기 위해서 해당 소스를 다운 받아서 테스트 겸 페이지를 손대고 있다.

테스트를 하기 위해서 아주 간단한 순서를 따라서 진행을 하는 도중에 문제가 발생했다.

 

MySql: Could not find driver....

 

정확히 에러는 다음과 같다

"exception 'PDOException' with message 'could not find driver' in ........"

 

테스트 환경은 MySQL을 사용하는 웹 서버이다.

문제는 PDO(PHP Data Object)가 MySQL로 연결되는 드라이버가 있어야 하는데 그게 안되어 있었다.

간단하게 php 파일을 하나 만들어서 phpinfo(); 함수를 이용해서 PDO 관련 섹션을 살펴보니

실제로 "sqlite2"만이 enable 되어 있었다.

 

문제 해결법은 PDO 섹션에 있는 PDO drivers에 mysql에 접속할 수 있는 드라이버를 enable 시켜주는 것이다.

 

1. php.ini 파일을 찾아서 "extension"이 있는 부분을 찾는다.

   다양한 DLL이 붙어 있거나 아니면 주석처리로 ";" 세미콜론이 들어가 있는데,

   이 부분에 다음의 한 줄을 추가한다.

 

   extension=php_pdo_mysql.dll

 

2. 아파치를 재시작하자. 아파치 모니터링 하는 어플을 실행시킨 후 "서비스 다시 시작" 눌러준다.

 

3. 다시 에러 나는 부분을 실행해 본다. 최소한 PDOException 문제는 발생하지 않아야 한다.

 

화면에 보니 이제 정상적으로 나온다.

항상 이 문제가 정확하게 일어나는 것은 아닐 수 있으므로

문제 부분에 대해서 자세히 구글링 해보면 해결책을 찾을 수 있다.

 

 

Posted by 아이맥스