php-cubrid 연동 시 cubrid driver 인식 문의

by devlsy posted Feb 15, 2022


* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.

OS
Windows 10 pro
CUBRID Ver.
CUBRID 2008 R4.3 (8.4.3.1005) (64bit release build for Windows_NT) (Dec 14 2012 19:16:36)
CUBRID TOOL Ver.
[도움말]-[버전정보] 확인
응용 환경(API)
php


* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.

 

에러 내용 및 재현 방법 재현 가능한 Source와 SQL
관련 테이블(인덱스, 키정보 포함) 정보 CUBRID 홈 디렉토리 아래 log 디렉토리 압축


-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------

안녕하세요 php <-> cubrid 연동 관련 문의드립니다.
개발환경 : 로컬

[xampp]
php 세팅 : xampp 이용
다운로드 링크 : 
https://sourceforge.net/projects/xampp/files/XAMPP%20Windows/5.6.40/
설치 파일 : 
xampp-windows-x64-5.6.40-1-VC11-installer.exe

 

[cubrid]
다운로드 링크 : 
https://ftp.cubrid.org/CUBRID_Engine/8.4.3/Windows/

설치 파일 : 
CUBRID-Windows-x64-8.4.3.1005.exe
cubrid_rel(cubrid ver) : 
CUBRID 2008 R4.3 (8.4.3.1005) (64bit release build for Windows_NT) (Dec 14 2012 19:16:36)

 

=====================================================================================

아래와 같은 절차로 테스트 중입니다.
xampp 설치 후 환경변수 확인 완료
php --version 잘 표시됨
PHP 5.6.40 (cli) (built: Jan  9 2019 15:10:36)

 

pdo driver 다운로드 링크 : 
https://ftp.cubrid.org/CUBRID_Drivers/PHP_Driver/PDO/CUBRID8.4.3/Windows/
pdo driver : 
CUBRID-PDO-5.4-WIN64-VC9-NTS-8.4.3.0001.bin.zip

php_pdo_cubrid.dll을 "C:\xampp\php\ext" 경로로 이동(extension_dir이 "C:\xampp\php\ext"로 되어 있음)(php.ini 734 line)
php.ini에서 extension=php_pdo_cubrid.dll 한줄 추가(php.ini 912 line)

드라이버 로딩 하는 지 아래 소스로 확인
<?php
echo'PDO Drivers available:
';
foreach(PDO::getAvailableDrivers()as $driver) {
    if($driver =="cubrid") {
    echo" - Driver: <b>".$driver.'</b>';
    } else {
    echo" - other Driver: ".$driver.'';
    }
}    
?>

driver 목록에 cubrid가 표시가 되지 않고 그냥 아래처럼 표시됩니다.

"PDO Drivers available: - other Driver: mysql - other Driver: sqlite"


제가 뭔가 놓친게 있나요?

그리고 원래 cmd에서 php --version 시 정상적으로 표시 되지만
php_pdo_cubrid.dll을 복사 후 php.ini에서 extension에서 추가 하면
cmd에서 php --version 입력 시 아래와 같이 dll파일을 읽지 못합니다.(첨부파일 cmd-php--version.png 참조)
해당 경로에 정상적으로 dll파일은 존재합니다.(첨부파일 php_pdo_cubrid.dll.png 참조)
 

php.ini파일과 캡쳐사진 첨부 합니다.

도움 부탁 드립니다.

 

아래는 제가 참조한 블로그입니다.

https://junny1909.tistory.com/176

 

아래와 같이 driver 연결 테스트 시 echo"Error: ".$e->getMessage()." 이 메시지가 떠서

"Could not find driver"라고 나옵니다.

<?php
$database ="test";
$host ="아이피";
$port ="33000";//use default value
$username ="dba";
$password ="비밀번호";

try{
$conn_str ="cubrid:dbname=".$database.";host=".$host.";port=".$port;
echo"PDO connect string: ".$conn_str."
";
$db =new PDO($conn_str, $username, $password );
echo"PDO connection created ok!"."
";
$db = null;//disconnect
}catch(PDOException $e){
echo"Error: ".$e->getMessage()."
";
}
?>
 


    


 

 

 


Articles

6 7 8 9 10 11 12 13 14 15