레이블이 php인 게시물을 표시합니다. 모든 게시물 표시
레이블이 php인 게시물을 표시합니다. 모든 게시물 표시

2012년 9월 16일 일요일

php - oracle 접속 라이브러리 with oci 8




php - oracle 접속 라이브러리 with oci 8

에서

Download oracle-instantclient11.2-basic-11.2.0.3.0-1.x86_64.rpm (59,492,344 bytes) (cksum - 3293107452)
Download oracle-instantclient11.2-devel-11.2.0.3.0-1.x86_64.rpm (609,139 bytes) (cksum - 2701969031)

위에 두개 다운



rpm -ivh oracle-instantclient11.2-*
rpm설치

라이브러리를 인식하기 위해서 /etc/ld.so.conf 파일에 등록 


[root@ns1 ~]# echo "/usr/lib/oracle/11.1/client/lib/" >> /etc/ld.so.conf


적용
[root@ns1 ~]# ldconfig

OCI8 설치 

 라이브러리 문제로 인해 libaio 을 yum으로 설치해 준다

[root@ns1 ~]# yum -y install libaio

oci8 파일을 다운로드 받아 comfile 설치한다 


[root@ns1 ~]# wget mirror.koreaidc.com/oracle/oci8-1.4.4.tgz

[root@ns1 ~]# tar xvfz oci8-1.4.4.tgz 
[root@ns1 ~]# cd  oci8-1.4.4

[root@ns1 oci8-1.4.4]# /usr/local/php/bin/phpize 

[root@ns1 oci8-1.4.4]# CFLAGS="-I/usr/include/oracle/11.2/client/" CXXFLAGS="-I/usr/include/oracle/11.2/client/"

[root@ns1 oci8-1.4.4]# ./configure --with-php-config=/usr/local/php/bin/php-config \
--with-oci8=instantclient,/usr/lib/oracle/11.2/client64/lib


에러확인
[root@ns1 oci8-1.4.4]# echo $?
0
이상이 없으면 make 작업 

[root@ns1 oci8-1.4.4]# make
[root@ns1 oci8-1.4.4]# make install

Installing shared extensions:  
/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/



[root@ns1 oci8-1.4.4]# vi /usr/local/lib/php.ini


;extension_dir = "./"  주석처리후 아래 입력 extension_dir = /usr/local/php/lib/php/extensions/no-debug-zts-20060613/
extension = "oci8.so"

[root@ns1 oci8-1.4.4]# php -m | grep oci
oci8

정상적으로 설치 

이제 웹페이지에서 확인해보자

2012년 3월 20일 화요일

php(5.2버전) mysqli 추가하기

php를 설치할때 추가할 모듈을 미리 결정하는 것이 중요합니다..



mysqli는 mysqli_connect시 mysql_connect 함수보다 속도면에서 뛰어나다고 합니다.
mysqli 모듈을 설치하기 위해서는 설치시 다음과 같은 옵션을 넣고 컴파일 합니다.




--with-mysqli=/usr/local/mysql/bin/mysql_config
 







php 재컴파일 없이 동적모듈로 추가는 다음과 같이 진행합니다.




php 소스폴더의 mysqli 폴더로 이동합니다. 대게 이런경로 입니다.

# cd /usr/local/src/php-5.2.0/ext/mysqli


그 다음에 phpize를 실행합니다.

#/usr/local/php/bin/phpize


configure 그리고 make

mysqli 설치과정에서 php 5.2 버전대에서 make시에 오류가 발생하는 경우가 있습니다.

make 명령어를 실행했을때 아래와 같은 error 메시지가 출력됩니다.
/usr/local/php/ext/mysqli/mysqli_api.c: In function 'zif_mysqli_stmt_bind_param':
/usr/local/php/ext/mysqli/mysqli_api.c:144: error: 'gptr' undeclared (first use in this function)
/usr/local/php/ext/mysqli/mysqli_api.c:144: error: (Each undeclared identifier is reported only once
/usr/local/php/ext/mysqli/mysqli_api.c:144: error: for each function it appears in.)
/usr/local/php/ext/mysqli/mysqli_api.c: In function 'zif_mysqli_stmt_execute':
/usr/local/php/ext/mysqli/mysqli_api.c:603: error: 'gptr' undeclared (first use in this function)



이때는
# vi /usr/local/php/ext/mysqli/mysqli_api.c

파일을 열어서 144줄, 150줄, 603줄, 607줄에 있는 gptr을 char*로 변경하여 저장한 후에 make를 실행하면 잘됩니다.  



make install은 하지 않아도 됩니다.

# ./configure --with-php-config=/usr/local/php/bin/php-config --with-mysqli=/usr/local/mysql/bin/mysql_config
# make



그리고 이 과정에서 생성된 확장모듈 파일을 넣어둘 폴더를 생성합니다.

# mkdir /usr/local/php/extensions


그리고 mysqli 모듈을 생성한 폴더로 복사

# cp /usr/local/src/php-5.2.0/ext/mysqli/modules/*.* /usr/local/php/extensions/


그리고 php.ini 파일을 열어서 아래의 내용을 추가해줍니다.


extension_dir = "/usr/local/php/extensions"
extension = mysqli.so



그리고 아파치를 재시작하면 mysqli 가 적용된 것을 phpinfo()를 통해 확인할 수 있습니다.





2012년 2월 20일 월요일

phpmyadmin mysql 웹관리 프로그램

phpMyAdmin-2.7.0 이상 버전은 config.inc.php 파일이 없어 
 
#1045 - Access denied for user: 'root@localhost'; (Using password: NO)  
메세지가 나옵니다.


첨부파일을 다운로드 후, 아래 경로로 업로드 합니다.
 config.inc.php


/adm/phpMyAdmin/


------------------------------------------------------------------------------------------------------------







“ phpMyAdmin Mysql 웹관리 프로그램 ” 
phpMyAdmin은 웹페이지에서 Mysql 데이터베이스를 관리할 수 있는 프로그램입니다.
php로 코딩되어 있고 프리웨어입니다.
웹페이지에서 데이터베이스를 직접 콘트롤 할 수 있으며
직접 쿼리문은 이용하여 데이터베이스를 관리할 수 있을 뿐만 아니라, 여러가지 파일포맷으로도
데이타를 백업 및 저장을 할 수 있습니다.
데크노트 뿐만아니라 여러 공개 홈빌더 및 게시판들은 거의다 Mysql 디비를 사용하기 때문에
자신의 웹디렉토리에 설치해 놓으면 유용하게 사용하실 수 있을거라 생각하고 소개합니다.
 
시간관계상? 설치방법 및 접속방법만 간단히 설명해 드림을 양해해 주시기 바랍니다.
 
우선 phpMyAdmin 소스를 다운로드합니다.
다운로드는 phpMyAdmin 홈페이지를 방문하시면 여러형태의 압축파일을 구하실 수 있습니다.
[phpMyAdmin 홈페이지 방문] 
 
1. 다운로드후 자신의 웹디렉토리에 업로드 합니다. FTP 프로그램을 이용합니다.
   업로드 방법은 테크노트를 처음 업로드를 하는 방식과 같다고 보시면 됩니다.
 
2. 압축 상태로 업로드시 텔넷이나 SSH로 자신의 계정에 접속하여 압축을 풀어야 하니까
   텔넷 및 SSH접속이 안되거나, 모르시는 분은 압축을 풀어서 디렉토리 통째로 업로드 하시면 됩니다.
 
3. 여하튼 압축을 풀면 config.sample.inc.php가 있습니다.
 
   18째줄 정도의
   $cfg['blowfish_secret'] = 'cookie'; /* YOU MUST FILL IN THIS FOR cookie AUTH! */ 
   cookie 라고  입력
   같이..수정하신후...config.inc.php 란 파일명으로 변경합니다.
 
4. config.inc.php 파일 수정후 업로드 합니다.
 
5. 그리고 웹브라우저에서 해당 디렉토리를 엽니다.
    주소창에서     http://주소/phpmyadmin디렉토리 입력후 접근합니다.
    처음엔 쿠키가 없으므로 아래 그림과 같이 나옵니다.
     
  해당 계정(아이디)와 패스워드를 입력하고 로그인합니다.