본문 바로가기
인프라 7기/Oracle

PHP - DB 접속

by 킹버거 2023. 3. 3.

# 오라클 접속 환경과 PHP 접속하기

 

오라클 접속을 위해 식별해야 될 내용

1. 오라클 서버의 IP와 사용 포트 번호

2. 오라클 SID명

3. 오라클 서버의 접속 식별자

4. 접속 계정과 암호 

 

항목 설정 값
IP 192.168.10.115 
Port 1521
SID DB19
TNS명 oracle
계정/패스워드 php/zaqxsw123

* 쫌 당연해서 웃기지만 사전 작업 : 접속 계정 생성, DB STARTUP 

알겠냐 황제현 

 

oci_connect() 함수를 이용한 오라클 접속

resource oci_connect (string $username, string $password [, string $connection_string [, string $character_set [, int $session_mode ]]] )

매개변수 의미
$username 접속계정
$password 패스워드
$connection_string 오라클 네트워크 식별자
$character_set 접속 문자 코드
기본값은 NLS_LANG에 정의한 값이다.
$session_mode 접속 권한을 지정한다.

 

접속 식별자 등의 내용을 tnsnames.ora 파일에 저장해둔 경우에 다음과 같이 TNS명을 이용해서 접속 프로그램을 작성할 수 있다. 

$user_name = "php";
$password = "php";
$server = "oracle";
$conn=oci_connect($user_name, $password, $server);

 

tnsnames.ora 파일을 사용할 수 없는 경우에 아래와 같이 접속 정보를 직접 작성하는 방법이 있다. 특히 접속에 장애가 많이 발생하는 경우 장애 테스트 때마다 tnsnames.ora 파일을 편집하는 것보다는 소스 내에 직접 네트워크 정보를 제공하면 문제를 파악하기 쉽다. 

$user_name = "php";
$password = "php";
$server = "DESCRIPTION =
			(ADDRESS = (PROTOCOL = tcp)(HOST = 192.168.10.35)(port = 1521))
            (CONNECT_DATA = (SID = DB19))
            )";
$conn=oci_connect($user_name, $password, $server);

 

Oracle 접속 : oconn.php

<?
    $user_name = "php";
    $password = "zaqxsw123";
    $server = "(DESCRIPTION =
             (ADDRESS = (PROTOCOL = tcp)(HOST = 192.168.10.115)(port = 1521))
             (CONNECT_DATA = (SID = DB19))
           )";
    $conn=@oci_connect($user_name, $password, $server) or die('Could not connect:');
    echo("Oracle 19c \$conn : $conn<br>");
    $st=oci_server_version($conn);
    echo("$st<br>");

    echo("<br><br>");

    $server2 = "oracle";
    $user_name2 = "st01";
    $password2 = "st01";
    $conn2=@oci_connect($user_name2, $password2, $server2) or die('Could not connect:');
    echo("Oracle 12c \$conn2 : $conn2<br>");
    $st=oci_server_version($conn2);
    echo("$st<br>");

    show_source(__FILE__);

?>

 

'인프라 7기 > Oracle' 카테고리의 다른 글

PHP - Oracle 연동 2  (0) 2023.03.03
PHP - Oracle 연동  (0) 2023.03.03
Oracle 자동 실행  (0) 2023.03.03
Oracle 실습 : Control file 관리  (0) 2023.03.02
Oracle 실습 : Parameter file 관리  (0) 2023.03.02