Background Image

FORUM

조회 수 34353 추천 수 0 댓글 3
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

훌륭한 데이터베이스를 개발하시고 공개해 주셔서 항상 감사합니다.
기존에 큐브리드 2.1 버전을 이용하여 서비스를 하다가 버전업의 필요성을 느껴 신규 버전을 테스트 하는 중
문의사항이 발생하여 질문 올립니다.



*** 테스트에 사용된 서버

* WEB 서버 (IP:114.207.246.20)
- windows 2003 R2 32bit Service Pack 2
- IIS 6.0
- php : php-5.2.17-Win32-VC6-x86.msi
- cubrid module : CUBRID-8.3.1-WIN32-PHP-5.2.X-VC6-TS
- cubrid server : CUBRID-Windows-x86-8.3.1.1002.exe



* DB 서버 (IP:114.207.246.21)
- windows 2008 R2 64bit Service Pack 1
- cubrid server : CUBRID-Windows-x64-8.3.1.1002.exe




*** 테스트 시나리오.

* 독립된 두대의 물리적인 서버를 각각 web, db 전용 서버로 설정한 후  web, db 서버 연동을 위한 테스트 진행




*** 발견된 문제점.

* test.php 내에서 php 내장함수인 "include" 함수를 이용하여 데이터베이스 연결이 정의된 파일(dcconn.php)을 불러 온 후 cubrid 함수를 실행하면 오류가 생김.
- "include" 함수를 이용하지 않고 파일 내에 데이터베이스 연결을 정의해 놓으면 오류가 발생하지 않음.





*** 문제의 화면

테스트 1. 정상적으로 진행되는 화면. (include 함수 사용 안함.)

--- test.php 소스 ---
<?

$cubrid_host = "114.207.246.21";
$cubrid_port = "35000";
$cubrid_db = "demodb";
$cubrid_user = "digipop";
$cubrid_pass = "1234";
$con_db = cubrid_connect($cubrid_host, $cubrid_port, $cubrid_db, $cubrid_user, $cubrid_pass);


// 위의 내용과 같은 정보를 포함한 파일.
//include "dbconn.php"; 주석 처리됨.

// 화면에 변수 표시.
echo "cubrid_host : $cubrid_host <br>";
echo "cubrid_port : $cubrid_port <br>";
echo "cubrid_db : $cubrid_db <br>";
echo "cubrid_user : $cubrid_user <br>";
echo "cubrid_pass : $cubrid_pass <br>";
echo "con_db : $con_db <br>";


// 데모디비를 위한 테스트 소스.
if($con_db) {
   $req = cubrid_execute($con_db, "select * from olympic");
   if($req) {
       while ($row = cubrid_fetch($req)) {
       echo $row["host_city"];
        echo "<br/>";
       }
       cubrid_close_request($req);
   }
   cubrid_disconnect($con_db);
}
?>

결과화면
itsok.png



테스트 2. 오류가 생긴 화면. (include 함수 사용함.)

--- test.php 소스 ---
<?
/* 주석처리 시작
$cubrid_host = "114.207.246.21";
$cubrid_port = "35000";
$cubrid_db = "demodb";
$cubrid_user = "digipop";
$cubrid_pass = "1234";
$con_db = cubrid_connect($cubrid_host, $cubrid_port, $cubrid_db, $cubrid_user, $cubrid_pass);
*/ 주석처리 끝

// 위의 내용과 같은 정보를 포함한 파일.
include "dbconn.php";

// 화면에 변수 표시.
echo "cubrid_host : $cubrid_host <br>";
echo "cubrid_port : $cubrid_port <br>";
echo "cubrid_db : $cubrid_db <br>";
echo "cubrid_user : $cubrid_user <br>";
echo "cubrid_pass : $cubrid_pass <br>";
echo "con_db : $con_db <br>";


// 데모디비를 위한 테스트 소스.
if($con_db) {
   $req = cubrid_execute($con_db, "select * from olympic");
   if($req) {
       while ($row = cubrid_fetch($req)) {
       echo $row["host_city"];
        echo "<br/>";
       }
       cubrid_close_request($req);
   }
   cubrid_disconnect($con_db);
}
?>

--- include 된 dbconn.php 소스 ---
<?
$cubrid_host = "114.207.246.21";
$cubrid_port = "35000";
$cubrid_db = "demodb";
$cubrid_user = "digipop";
$cubrid_pass = "1234";

$con_db = cubrid_connect($cubrid_host, $cubrid_port, $cubrid_db, $cubrid_user, $cubrid_pass);
?>


결과 화면
error.png



*** 예상되는 오류의 발생 원인.

- web, db 서버가 서로 운영체제 및 큐브리드 서버 비트가 달라서 오류가 생김.
 : 의심됨.
- "CUBRID-8.3.1-WIN32-PHP-5.2.X-VC6-TS" 큐브리드 모듈의 오류.
 : 의심됨.
- "CUBRID-Windows-x86-8.3.1" 서버 내에서의 설정 문제.
 : 특별히 설정을 건드린것 없이 기본으로 사용중이지만 이것도 의심.
- php 5.2.17-Win32-VC6-x86 버전의 오류.
 : "include"된 파일의 변수 값이 화면에 정상적으로 표시되는것으로 보아 원인이 아닌듯함.
- 서버간의 통신 불안정.
 : 이것 역시 원인이 아닌듯함.



*** 그 외 문제점.

- 테스트 2 에 해당하는 소스도 여러번 새로 고침을 하면 간혹 에러 없이 정상적인 결과를 출력하기도 함.





오류 발생원인에 대한 답변 부탁드리겠습니다.
감사합니다.



  • ?
    남재우 2011.05.20 07:10

    몇가지 테스트를 해봤는데 관련된 문제는 파악이 잘 되지 않아 정확한 문제를 말씀드리기는 좀 어려울 것 같습니다.

    include 문을 사용하시되, connection 부분을 함수로 만들어 connection handle 을 return 해 주는 형태로 만들면 잘 될 것 같습니다.

    function cubrid_conn() {

    ...

    return $cub_con;

    }

    ....

    include ...

    $con_db = cubrid_conn();

  • ?
    김우람 2011.05.20 20:54

    답변 감사합니다.

    작성하신 방법으로 다시 테스트를 진행하여 보았으나 여전히 같은 문제가 발생합니다.

    (결과 화면을 여러번 새로 고침을 하면 간혹 에러 없이 정상적인 결과를 출력하기도 합니다.)


    큐브리드 4버전을 기다려보고 다시 테스를 진행해 보는 것이 좋을 것 같습니다.

    감사합니다.

  • ?
    샤롱스판 2011.05.20 21:17

    이미 CUBRID 2008 4.0 베타 버전이 릴리스되었습니다.

    PHP driver역시 많이 개선되었으므로 이것으로 테스트를 진행하시는게 좋을 것 같아요. GA버전은 한달 정도의 간격을 두고 출시 예정입니다.

    http://www.cubrid.com/zbxe/download_2008

    http://sourceforge.net/projects/cubridinterface/files/PHP/PHP%20Driver/CUBRID%208.4.0/Windows/

    http://sourceforge.net/projects/cubridinterface/files/PHP/PHP%20Driver/CUBRID%208.4.0/Linux/

     


List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 admin 2024.04.23 48
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4458
1014 Code::Blocks - CCI 개발 환경 문의 3 reerror 2011.06.17 12806
1013 리눅스 민트(우분투)에서 cci 개발 환경 구축 방법 5 reerror 2011.06.16 15637
1012 외부에서 메니져 접속이 안됩니다. 3 platanus 2011.06.14 12815
1011 백업시 lgar 파일이 지워지지 않는 문제 6 동현 2011.06.11 20360
1010 ResulstSet이 닫혔는데... 닫히는 이유가 먼가요? 3 안지민 2011.06.10 15607
1009 ODBC, OLEDB 접속후, ADO 프로그래밍을 했을 때.. 1 lkim 2011.06.09 13577
1008 cubird-php 연동이 안됩니다. (php-4.4.9) 1 sihal7 2011.06.09 13732
1007 큐브리드 64비트 에서 32비트로 DB이전이 안됩니다. 도와주세요!~ 2 린설 2011.06.07 13098
1006 php - cubird 연결 부분 오류 문제 다시 문의 드립니다. 5 file 김우람 2011.06.04 14334
1005 Cubrid 2008 R2.2 버전 한글 깨짐 관련 문의 1 ezzone 2011.06.04 18468
1004 "DBMS, 0, Unknown DBMS error" 요건 무슨 애러인가요?;; 2 eitetu 2011.06.02 14296
1003 Java procedure 등록 이후 실행 시 NullpointException 발생 1 머루탱 2011.06.02 15165
1002 This object is in a zombie state 인 경우 1 유겸아빠 2011.06.01 12070
1001 트랜잭션의 상세정보를 확인할수 있는 방법이 있나요? 1 김현성 2011.06.01 10563
1000 데이터베이스 클래스수와 성능과의 관계에 대한 질문 1 김현성 2011.06.01 9765
999 TIMESTAMP 형 data를 insert 하는 sql문이 궁금합니다. 1 yongsu9 2011.05.28 34995
998 복제 지연 로그의 최대 라인수 지정 디폴트값?? 2 닉넴 2011.05.27 10322
997 복제 DB가 생성이 되질 않습니다... 긴급!! 2 닉넴 2011.05.27 10662
996 트랙잭션이 시스템에 의해 중단됩니다. 1 김현성 2011.05.26 11019
995 HA 문의 드립니다. 5 뽀로꾸 2011.05.26 20226
Board Pagination Prev 1 ... 145 146 147 148 149 150 151 152 153 154 ... 200 Next
/ 200

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2113 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales