이글좀 해석해주세요 (오라클 php 연동관련)

moonrepeat의 이미지

현재 데비안 3.1에 다 apt를 이용해 apm을 사용하고 있는 유저입니다.
얼마전 여기에 oracle 8.1.7을 설치 했고 정상적으로 작동합니다.
그리고 php4와 oracle의 연동이 필요해 apt로 관련 모듈을 검색했지
만 없는 결과로 전에 Q&A게시판에 물어서 모듈만 설치했습니다.
그런데 연동이 안되더군요.......

모듈은 php소스 파일의 압축을 풀어서 php4xxx/ext/oci8 디렉토리
에서 phpize 실행후 ./configure --with-oci8=/home/oracle/product/
8.1.7 한후 make 그리고 make install을 실행했습니다.

나중에 phpinfo()를 이용해보니 라이브러리 경로를 못찾는것 같더군요.
그런데 잘생각해보니 make시 아래와 같은 영어(-_-;)로 라이브러리 경
로에 설정에 대한 글이 있었습니다.

Libraries have been installed in:
   /usr/local/src/php-4.3.9/ext/oci8/modules

If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the `-LLIBDIR'
flag during linking and do at least one of the following:
   - add LIBDIR to the `LD_LIBRARY_PATH' environment variable
     during execution
   - add LIBDIR to the `LD_RUN_PATH' environment variable
     during linking
   - use the `-Wl,--rpath -Wl,LIBDIR' linker flag
   - have your system administrator add LIBDIR to `/etc/ld.so.conf'

See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.

해석좀 부탁드립니다.

세이군의 이미지

APO(Apache+PHP+Oracle) 시스템을 구축하려는 경우에는 oracle:dba사용자의 환경변수들을 모두 아파치 시작 스크립트에 적어주어야 오라클 관련 함수들을 제대로 사용할 수 있습니다.

올려주신 메시지는 현재 오라클 관련 모듈이
/usr/local/src/php-4.3.9/ext/oci8/modules
에 있으며

다른 곳에 있는 라이브러리가 필요하다면 시작하기 전에 해당하는 라이브러리의 위치를 환경변수로 등록해 달라고 하는 것입니다.

APO 로 구축하는 것이라면 아파치 시작/종료 관리 스크립트인
[설치위치]/bin/apachectl에 오라클 관련 환경변수를 모조리 추가해 주세여
PO(PHP+ORACLE)이면 php실행파일의 이름을 php.bin으로 변경하고
아래의 스크립트를 php라는 이름으로 저장해 주세여.

#!/bin/sh
#
# 오라클 관련 환경변수들을 이곳에 모두 등록
#
exec php.bin $@

이렇게 하면 PHP에서 오라클 관련 함수들을 아무 문제없이 사용가능 할 것입니다.

익명 사용자의 이미지

헉...... 완전 포기상태입니다.
apt라 설치했더니만 현재 도저히 php와 oracle이 연동이
안됩니다. (php라는 실행파일도 없는 것 같음....)

조만간 전부다 소스로 설치해야 겠습니다.......

moonrepeat의 이미지

이런식으로 php소스 코드안에 경로를 넣어주시 실행이 되는군요....
(apachetl에 넣어도 반응이 없었음....)
이 방법 상당히 귀찮은데 -_- ; 좋은 방법 없을까요?

<?php
PutEnv("ORACLE_SID=repeat");
PutEnv("ORACLE_BASE=/home/oracle");
PutEnv("ORACLE_HOME=/home/oracle/product/8.1.7");
PutEnv("TNS_ADMIN=/home/oracle/product/8.1.7/network/admin");
PutEnv("LD_LIBRARY_PATH=/home/oracle/product/8.1.7/lib");

if ($c=ocilogon("scott","tiger","repeat")){
        echo "Successfully\n";
        OCILogoff($c);
}
else{
        $err=OCIError();
        echo " Error",$err[text];
}
?>

삽질은 계속되어야 한다....... 쭉.........

moonrepeat의 이미지

smjang78 wrote:
APO 로 구축하는 것이라면 아파치 시작/종료 관리 스크립트인
[설치위치]/bin/apachectl에 오라클 관련 환경변수를 모조리 추가해 주세여
PO(PHP+ORACLE)이면 php실행파일의 이름을 php.bin으로 변경하고
아래의 스크립트를 php라는 이름으로 저장해 주세여.
#!/bin/sh
#
# 오라클 관련 환경변수들을 이곳에 모두 등록
#
exec php.bin $@

이렇게 하면 PHP에서 오라클 관련 함수들을 아무 문제없이 사용가능 할 것입니다.

apachectl 파일에 환경변수 전부 export 해봐도 안되더군요.....

그리고 php 파일을 변경하려고 하니
apt-get으로 설치해서 그런지 php라는 실행파일이 보이지 않는군요....
데비안 apt-get으로 설치했으면 어떻게 해야 되는지.....

삽질은 계속되어야 한다....... 쭉.........

moonrepeat의 이미지

ㅎㅎㅎ 성공했습니다.

기존에 apachectl에 환경변수 추가할때 export ORACLE_HOME~~~
이런식으로 했는데 export를 삭제 해주니 잘되는군요 ^^

삽질은 계속되어야 한다....... 쭉.........

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.