2. DBMS이야기/01. PostgreSQL

PHP에서 PostgreSQL 사용하기

OSSW(Open Source System SoftWare 2014. 7. 25. 10:57
PHP에서 PostgreSQL 사용하기
PHP pgsql 사용하기

 
확인

php.ini 위치 확인

[root@jmnote ~]# php -i | grep php.ini
Configuration File (php.ini) Path => /etc/php.ini

→ php.ini는 /etc에 있다.

extension 폴더 확인

  • 먼저 extension이 설치될 위치를 확인한다.
[root@jmnote ~]# php -r "phpinfo();" | grep ^extension
extension_dir => /usr/lib64/php/modules => /usr/lib64/php/modules
→ 각종 extension들은 /usr/lib64/php/modules에 설치되어 있다.

so 파일 확인

해당 폴더에 pdo.so 와 pdo_pgsql.so 파일이 있는지 확인한다.

[root@jmnote ~]# ll /usr/lib64/php/modules/ | grep pdo
-rwxr-xr-x 1 root root   28264 Feb 12  2010 pdo_mysql.so
-rwxr-xr-x 1 root root   92464 Feb 12  2010 pdo.so
-rwxr-xr-x 1 root root   24200 Feb 12  2010 pdo_sqlite.so

→ pdo_pgsql.so 파일이 없다.

설치

[root@jmnote ~]# yum install php-pgsql -y
... (생략)
====================================================================================================
 Package                     Arch               Version                      Repository        Size
====================================================================================================
Installing:
 php-pgsql                   x86_64             5.3.3-3.el6_2.8              Daum              68 k
Installing for dependencies:
 postgresql-libs             x86_64             8.4.11-1.el6_2               Daum             198 k
 
Transaction Summary
====================================================================================================
Install       2 Package(s)
 
Total download size: 266 k
Installed size: 763 k
Downloading Packages:
(1/2): php-pgsql-5.3.3-3.el6_2.8.x86_64.rpm                                  |  68 kB     00:00     
(2/2): postgresql-libs-8.4.11-1.el6_2.x86_64.rpm                             | 198 kB     00:00     
----------------------------------------------------------------------------------------------------
Total                                                               1.6 MB/s | 266 kB     00:00     
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : postgresql-libs-8.4.11-1.el6_2.x86_64                                            1/2 
  Installing : php-pgsql-5.3.3-3.el6_2.8.x86_64                                                 2/2 
 
Installed:
  php-pgsql.x86_64 0:5.3.3-3.el6_2.8                                                                
 
Dependency Installed:
  postgresql-libs.x86_64 0:8.4.11-1.el6_2                                                           
 
Complete!

설치 확인

[root@jmnote ~]# rpm -qa | grep pgsql
php-pgsql-5.3.3-3.el6_2.8.x86_64
[root@jmnote ~]# ll /usr/lib64/php/modules/ | grep pdo
-rwxr-xr-x 1 root root   30016 May  8 04:17 pdo_mysql.so
-rwxr-xr-x 1 root root   37056 May  8 04:17 pdo_pgsql.so
-rwxr-xr-x 1 root root  102456 May  8 04:17 pdo.so
-rwxr-xr-x 1 root root   24640 May  8 04:17 pdo_sqlite.so
→ pdo_pgsql.so 파일이 설치되었다.

httpd 재시작

[root@jmnote ~]# service httpd restart
Stopping httpd:                                            [  OK  ]
Starting httpd:                                            [  OK  ]

pdo_pgsql 확인

[root@jmnote ~]# php -i | grep pdo_pgsql
/etc/php.d/pdo_pgsql.ini,
pdo_pgsql
Revision =>  $Id: pdo_pgsql.c 300351 2010-06-10 12:11:19Z iliaa $
→ 설정도 정상적으로 되어 있다.

PHP 수행 확인

[root@jmnote ~]# php -r "pg_connect();"
PHP Warning:  Wrong parameter count for pg_connect() in Command line code on line 1
 
Warning: Wrong parameter count for pg_connect() in Command line code on line 1
→ pg_connect 명령어를 인식한다. 이제 PHP 코딩을 시작하면 된다.

황 석( http://jmnote.com/wiki/PHP%EC%97%90%EC%84%9C_PostgreSQL)

'2. DBMS이야기 > 01. PostgreSQL' 카테고리의 다른 글

PostgreSQL Privileges Test 1  (0) 2014.07.28
PG_RESTORE  (0) 2014.07.26
SQL_DUMP VS SQL_DUMPALL  (0) 2014.07.24
[Postgresql] Lock Session 확인 및 정리 가이드  (0) 2014.07.23
[postgreSQL] vacuum 이란  (0) 2014.07.22