"PHP에서 오라클 쿼리"의 두 판 사이의 차이

67번째 줄: 67번째 줄:
*[[PHP에서 오라클 DB 사용]]
*[[PHP에서 오라클 DB 사용]]
*[[PHP에서 PostgreSQL 접속 테스트]]
*[[PHP에서 PostgreSQL 접속 테스트]]
*[[/etc/hosts]]


==주석==
==주석==

2012년 9월 12일 (수) 10:36 판

PHP에서 오라클 접속 테스트
PHP에서 오라클 쿼리 테스트

1 사전 작업

2 소스 코드

웹서버에 아래 내용으로 test_ora.php 라는 파일을 생성하자.

<?php
function xmp_print_r($arr) { echo '<xmp>'; print_r($arr); echo '</xmp>'; }
$conn = oci_connect('사용자명', '비밀번호', 'DB서버주소/서비스명', 'UTF8');
$query = "SELECT to_char(sysdate, 'YYYY-MM-DD HH24:MI:SS') AS Now FROM dual";
$stid = oci_parse($conn, $query) or die('oci parse error: '.oci_error($conn));
if(oci_execute($stid) === false) die("oci query error [ $query ] message : ".oci_error($stid));
oci_fetch_all($stid, $arr, null, null, OCI_FETCHSTATEMENT_BY_ROW);
oci_close($conn);
xmp_print_r($arr);
?>
3행 기입예시
$conn = oci_connect('testuser', 'P@ssw0rd', '111.222.33.44/MYSVC', 'UTF8');

3 브라우저 확인 (실패)

브라우저로 test_ora.php에 접속해보자.

Warning: oci_connect(): ORA-24408: could not generate unique server group name in /var/www/html/test_ora.php on line 4 cannot connect: Array
→ 웹서버와 DB서버의 통신에 문제가 있다.
→ 웹서버에 대해 고유한 서버그룹명이 필요.

4 hosts 파일 설정

명령어
echo -e "자신의아이피\t호스트명" >> /etc/hosts
→ 웹서버 자신의 아이피와 호스트명을 기입한다.[1]
실행예시
[root@jmnote ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
[root@jmnote ~]# echo -e "111.222.33.44\tjmnote" >> /etc/hosts
[root@jmnote ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
111.222.33.44	jmnote

5 브라우저 확인 (성공)

브라우저에서 test_ora.php에 접속해보자.

Array
(
    [0] => Array
        (
            [NOW] => 2012-09-06 18:12:19
        )
)

6 같이 보기

7 주석

  1. 호스트명이 실제 웹서버의 호스트명과 일치하지 않아도 된다. DB서버가 웹서버에 대해 적절한 이름을 생성하는 힌트로 사용된다.

8 참고 자료

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}