Warning: session_destroy() [function.session-destroy]: Session object destruction failed in /home/httpd/html/board/include/header.php on line 32
적수네 동네 - 1원짜리 팁? [ 게시물 삭제 ]
>> Delete No. 1018 article
No. oracle8 + php 연동

등록 2001-02-17 18:12:00     조회 7
이름 not2b    

실은 1원짜리 팁도 안되는건데..
mysql 잘쓰다가 회사서버의 DB를 웹에서 불러올 일이 있어 자료를
찾았는데 없더군여...
 혹 도움될까 해서 올립니다.. 걍 참고만 하세요..
 1. 저의 환경...
   - 사무실에서 사용하는 desktop (350Mhz,64MB,3.6G HDD, NIC 2장)
   - redat계열(allix linux ?)
   - 외부에서 로칼IP로 access하기 위하여 NIC LOCAL setup
   - oracle 8.1.6.1 중에서 net8부분만 인스톨
   - 메인서버는 로칼IP에 물려있습니다
 
 오라클설치후
   vi  $ORACLE_HOME/network/admin/tnsnames.ora
  ORCL723 =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = tcp)(HOST = 192.9.201.201)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SID=ORCL)
    )
  )
 vi $ORACLE_HOME/network/admin/listener.ora
 STARTUP_WAIT_TIME_LISTENER = 0
LISTENER =
  (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = tcp)(HOST = 리눅스의 외부IP)(PORT = 1521))
    (ADDRESS = (PROTOCOL = tcp)(HOST = 127.0.0.1)(PORT = 1523))
  )
 CONNECT_TIMEOUT_LISTENER = 10
 SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = ORCL   )
      (ORACLE_HOME = /u01/oracle8)
    )
  )
 TRACE_LEVEL_LISTENER = OFF
 # PASSWORD_LISTENER = (41923E287A1E5C90)
  2. PHP 설치시 compile option에다가
   --with-oci8=오라클이 설치된 홈디렉터리
   --server-uid=id
   --server-gid=오라클의 group명
   추가해 주시구 인스톨하세요..
    아파치 설치하시구여..(생략)
 
 3. 위 config option에서 준 --server-uid=id의 id계정을 만듭니다.
   가급적이면 nobody 를 지워버리구..
   uid/gid를 맞춰줍니다.
   /etc/passwd에서 id계정은 로그인 할 수 없도록 하시구요..
   ( not2b:x:500:99::/home/not2b:/bin/false 이런식으로...)
    /etc/group에서 id그룹을 oracle의 그룹과 같이해주시구..
    id 계정 로그인시 홈디렉터리의  .bashrc에다가
    export ORACLE_HOME=/u01/oracle8
   export ORACLE_SID=ORCL
   export NLS_LANG=AMERICAN_AMERICA.KO16KSC5601
   export TNS_ADMIN=$ORACLE_HOME/network/admin
   export TWO_TASK=ORCL723
   export ORA_CLIENT_LIB=shared
 
이렇게 넣어주시구여..
 4. 아파치의 user nobody , group #-1 부분을 
   user id, group 오라클user의 group 이름으로 주세요.
 5. 아파치 startup 시키구여
   오라클 유저에서
   lsnrctl start 하세여..
   (저의 경우 리눅이가 gateway역활만 하므로 db는 startup
    하지 않습니다. )
    웹이 실행가능한 디렉토리에서
 
vi oratest.php
   <?
    $conn = ocilogon("scott","tiger","orcl723"); /* listerner 값그대로*/
    if ($conn)
       {
        print "ok connected";
        print "DB verson is "  . ociserverversion($conn);
        ocilogoff($con);
       }
else
        print "db connect error : " . $conn;
?>
 http://myweb/oratest.php
 ok connected
 DB verson is Oracle7 Server Release 7.2.3.0.0 -
Production Release With the parallel query option
PL/SQL Release 2.2.3.0.0 - Production
 요렇게 웹브라우저에 출력되면 성공이져...
(메인서버의 오라클이 7.2.3이라서리...리눅이는 8.1.6.1 이구여..)
  허접한 팁이었습니다만....혹시 읽어보시구...
의문사항이나 수정할 부분이 있으시면
멜이나 문답게시판에 올려주세요..
 --
@~@
[관리자] 패스워드를 입력 하십시오. 답장이 존재하면 함께 삭제됩니다.[ 목록 | 이전 ]
패스워드:    

Copyleft 1999-2026 by JSBoard Open Project
Theme Designed by IDOO All right reserved