跳转到内容


FreeBSD 8.0 编译安装 PostgreSQL 8.4.2


  • 您无法回复此主题
No replies to this topic

#1 冰力

    Administrator

  • 总版主
  • 1314 帖子数:

发表于 2010/04/15 23:39:30

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
$ ee /usr/local/pgsql/pgsql

#修改 PGDATA=/usr/local/pgsql/data
#为PGDATA=/data/pgsql/data

#修改 PGUSER=postgres
#为PGUSER=pgsql
#保存退出

$ ee /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支持就算是完成了。祝大家安装顺利。