最近準備做一個使用PostgreSQL的項目,當然要在伺服器上安裝PostgreSQL了。安裝要比MySQL麻煩一些,現記錄如下。
1、編譯安裝PostgreSQL 8.4.2
引用
wget http://wwwmaster.postgresql.org/redir/391/f/source/v8.4.2/postgresql-8.4.2.tar.gz
tar zxvf postgresql-8.4.2.tar.gz
cd postgresql-8.4.2
./configure --prefix=/usr/local/pgsql
make
make install
2、建立PostgreSQL使用者,由於PostgreSQL不能用root初始化及啟動,所以必須建立一個新的使用者
引用
pw groupadd pgsql
pw useradd pgsql -g pgsql -d /data/pgsql -s /bin/csh
3、建立PostgreSQL資料存放目錄
引用
mkdir -p /data/pgsql/data
chown -R pgsql:pgsql /data/pgsql/
4、初始化資料庫
引用
su pgsql /usr/local/pgsql/bin/initdb -D /data/pgsql/data -E UTF8
5、修改PostgreSQL開機檔案
引用
cp contrib/start-scripts/freebsd /usr/local/pgsql/pgsql
vi /usr/local/pgsql/pgsql
#修改PGDATA=/usr/local/pgsql/data
#為PGDATA=/data/pgsql/data
#修改PGUSER=postgres
#為PGUSER=pgsql
#儲存退出
vi /etc/rc.local
#在其中加上 /usr/local/pgsql/pgsql start
#儲存退出
至此PostgreSQL就算是安裝完了,接下來是安裝PHP的PostgreSQL支援。
1、做一個libpq.so.5的連結
引用
ln -s /usr/local/pgsql/lib/libpq.so.5 /usr/lib/libpq.so.5
2、重新編譯PHP
引用
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-iconv-dir=/usr --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr/local --enable-xml --disable-rpath --enable-discard-path --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-fastcgi --enable-fpm --enable-force-cgi-redirect --enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --disable-ipv6 --without-pear --with-pgsql=/usr/local/pgsql
make ZEND_EXTRA_LIBS='-liconv'
make install
3、重新啟動php-fpm
引用
/usr/local/php/sbin/php-fpm stop
/usr/local/php/sbin/php-fpm start
如果沒有報錯,那麼整個PostgreSQL安裝以及PHP支援就算是完成了。祝大家安裝順利。