본문 바로가기

교육/Oracle

Day 52 (오라클 기초구성 5)

반응형

[오라클 기초구성5]Oracle연동 AP설치

[오라클 기초구성5]Oracle연동 AP설치.pdf
4.43MB


Oracle연동 AP(Apache + PHP) 설치

 

 

 

<목차>

 

1.   AP서버 설치 환경

  

2.   설치과정 및 확인

 

    1) 오라클 인스턴스 클라이언트 설치

    2) Apache 설치

    3) PHP 설치

    4) Apache, PHP 설정

 

 

 

1.    AP서버 설치 환경

호스트명

ap

IP

192.168.111.154

아파치 서버 경로

/app/apache

아차피

2.2.34 (httpd-2.2.34.tar.gz)

PHP

5.6.39 (php-5.6.39.tar.gz)

오라클 인스턴스 클라이언트

12.2.0.1.0

 

2.    설치과정 및 확인

1)     오라클 인스턴스 클라이언트 설치

설치할 오라클 인스턴스 클라이언트는 오라클 한국어 사이트인 https://www.oracle.com/kr/index.html 에서 oracle-instantclient12.2-basic-12.2.0.1.0-1.x86_64.rpm oracle-instantclient12.2-devel12.2.0.1.0-1.x86_64.rpm 두 개의 파일을 다운 받는다.

 

  /usr/lib/oracle/12.2 ORACLE_BASE디렉토리로 설치하고 인스턴스 클라이언트를 설치한다.

# rpm -Uvh oracle-instantclient12.2-basic-12.2.0.1.0-1.x86_64.rpm // basic의 설치를 진행한다.
# rpm -Uvh oracle-instantclient12.2-devel-12.2.0.1.0-1.x86_64.rpm // devel
의 설치를 진행한다.

 

③ 디렉토리 및 오라클 파일을 생성한다.

 

# mkdir –p /usr/lib/oracle/network/admin     // 하부 디렉토리까지 생성한다.
# vi /usr/lib/oracle/network/admin/sqlnet.ora
NAMES.DIRECTORY_PATH= (TNSNAMES) // sqlnet.ora파일을 생성한다.
# vi /usr/lib/oracle/network/admin/tnsnames.ora
oracle =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = tcp) (HOST = <oracle server ip주소>) (port = 1521))
      (CONNECT_DATA = (SID = DB12))  // tnsnames.ora파일에 oracle server tns정보를 입력한다.
    )

 

 

2) Apache 설치

# tar xvfz httpd-2.2.34.tar.gz // apache파일의 압축을 푼다.
# cd ./httpd-2.2.34 // configure
을 위해 디렉토리를 이동한다.
# ./configure --prefix=/app/apache --enable-rewrite --enable-so // configure
을 실행한다.
# make // install
파일을 생성한다.
# make install // install
을 실행한다.

ap 연동 압축파일을  /usr/local/ 안에 다운받는다 .

 

..........
apache 파일의 압축을 해제한다 .

 

..........
configure 을 위해 디렉토리를 이동하고 , configure 을 수행한다 .

 

..........
Apache  서버 설치 파일을 생성한다 .

 

..........
Apache  서버 설치 파일을 실행한다.

 

Apache  서버를 실행하면 서버네임이 지정되지 않았다는 내용이 출력된다 .( 경고 메시지가 발생하지 않는다면 그대로 진행해도 된다 .)

 

Httpd.conf(/app/apache/conf/httpd.conf) 파일에서  ServerNmae 을 추가한다 .

 

Apache  서버를 중지하고 재시작한다 .

 

정상작동 화면이 출력된다 .

 

3) PHP 설치

# yum install -y libxml2*   // php설치를 위한 패키지를 설치한다.
# tar xvfz php-5.6.39.tar.gz // php
파일의 압축을 푼다.
# cd php-5.6.39/          // configure
을 위해 디렉토리를 이동한다.
# ./configure --with-apxs2=/app/apache/bin/apxs --with-oci8=instantclient,/usr/lib/oracle/12.2/client64/lib --enable-sigchild   // configure
을 실행한다.
# make // install
파일을 생성한다.
# make install // install
파일을 실행한다.
# cp php.ini-development /usr/local/lib/php.ini // ini
파일을 복사한다.

..........
Php  동적 라이브러리 이용을 위한 패키지를 설치한다 .

 

..........
Php  동적 라이브러리 파일의 압축을 푼다 .

 

..........
configure 을 위해 디렉토리를 이동하고  configure 을 수행한다 .

 

..........
Php  동적 라이브러리 설치 파일을 생성한다 .

 

..........
Php  동적 라이브러리 설치 파일을 실행한다 .

 

php  동적 라이브러리를 사용하기 위해  ini 파일을 복사한다 .

 

4) Apache, PHP 설정

# vi /app/apache/conf/httpd.conf // Apache 데몬 설정파일의 설정을 변경한다.
...
ServerName localhost // ServerName
을 지정하지 않았다면 지정한다.
...
AddType application/x-httpd-php .php .html .htm .inc // module
아래에 추가로 작성한다.

# vi /usr/local/lib/php.ini // php 동적 라이브러리의 정보를 수정한다.
short_open_tag = On // php
구문이 바로 시작되게 수정한다.

default_charset = "EUC-KR" // Oracle
서버의 문자코드와 일치 시킨다.

include_path=".:/usr/local/lib" // Oracle 
인스턴스 클라이언트의 라이브러리 위치를 생성한다.

upload_tmp_dir = /tmp // 
임시 디렉토리를 지정한다.

date.timezone = Asia/Seoul // Oracle
서버와의 시간동기화를 위해 사용한다.

error_reporting = E_ALL & ~E_NOTICE // 
에러코드에 대한 출력 여부를 설정한다.

 

# vi /app/apache/bin/apachectl


# oracle install

export TNS_ADMIN=/usr/lib/oracle/network/admin
export LD_LIBRARY_PATH=/usr/lib/oracle/12.2/client64/lib
export NLS_LANG=AMERICAN_AMERICA.KO16MSWIN949

// Oracle 인스턴스 클라이언트에서 사용할 TNS관련 파일의 위치 및 라이브러리 위치 언어 셋을 설정한다.

 

# vi /app/apache/htdocs/index.html

<?
$server = "oracle"; // TNS
에 등록되어 사용할 Oracle 서버명
$user_name = "php"; // Oracle
서버에 연결할 스키마명
$password = "php"; // Oracle
서버에 연결할 스키마의 비밀번호
$conn=@oci_connect($user_name, $password, $server) or die('Could not connect:');
 // Oracle
서버의 연결 여부를 확인한다.
echo("Oracle 12c \$conn : $conn<br>");
$st=oci_server_version($conn);
echo("$st<br>");
phpinfo(); // php
정보를 출력한다.
?>

Apache  데몬 설정파일의 설정을 변경한다 .

 

..........
..........
..........
..........
..........
php  동적 라이브러리의 정보를 수정한다 .

 

Oracle  인스턴스 클라이언트에서 사용할 TNS 관련 파일의 위치 및 라이브러리 위치 언어 셋을 설정한다 .

 

Apache 서버에서 연동할  Oracle 서버의 정보를  Php 언어로 작성한다 .

 

Apache 서버를 재시작한다 .

 

정상적으로 연동되었다 .

 

 

반응형

'교육 > Oracle' 카테고리의 다른 글

Oracle 기초 구성  (0) 2020.02.03
Day 51 (오라클 기초구성 3 & 4)  (0) 2020.01.31
Day 50 (DB 파티션)  (0) 2020.01.30
Day 49 (DB)  (0) 2020.01.29
Day 48 (오라클 기초구성2)  (0) 2020.01.28