网管联盟 | 网管论坛 | 网管u家 | 网管博客 | 网管软件 | 网管求职 | 小游戏 | 网管搜索 | 网管原创 | 网管聚合 | 网管读摘 | 网管焦点 | 世界素材 | 会员投稿 | 会员中心 
中国网管联盟
Windows Linux Cisco 网络技术 数据库 黑客攻防 DotNet Java PHP 认证 新闻资讯 服务器 存储资讯 网络设备 网管学堂 技术专题 焦点 网吧频道
 当前位置: > bitsCN.com > 数据库技术 > 其它数据库 > PostgreSql服务器的配置  

PostgreSql服务器的配置

2006-10-05  作者:bitsCN整理  来源:中国网管联盟  点评 投稿 收藏

 

4、编译源码: 中国网管联盟bitsCN.com

$make 网管网www.bitscn.com

5、按照ocnfigure的配置按照程序:

网管朋友网www_bitscn_net

#su
#make install

网管下载dl.bitscn.com

在这里我们架设postgresql安装在默认的位置/usr/local/

中国网管论坛bbs.bitsCN.com

6、配置共享库:

网管朋友网www_bitscn_net

告诉你的系统如何找到共享库。如何实现这些因平台而异。看起来可以在任何地方生效的方法是设置环境变量 LD_LIBRARY_PATH:
# LD_LIBRARY_PATH=/usr/local/pgsql/lib
# export LD_LIBRARY_PATH

网管论坛bbs_bitsCN_com

你可能把这些放到一个 shell 启动文件里,象 ~/.bash_profile。
在一些系统里,下面的方法是最好的方法,但是你必须有 root 权限。编辑文件 /etc/ld.so.conf,增加一行

网管朋友网www_bitscn_net

/usr/local/pgsql/lib 网管有家www.bitscn.net

然后运行命令: 网管联盟bitsCN@com

#/sbin/ldconfig 网管有家bitscn.net

7、用postgres数据库超级用户完成数据库的安装: 网管联盟bitsCN@com

你必须用 PostgreSQL 超级用户帐号登录执行这一步。以 root 是不能进行这一步的;

网管联盟bitsCN_com

# mkdir /usr/local/pgsql/data
# chown postgres /usr/local/pgsql/data
#su postgres
$ /usr/local/pgsql/initdb -D /usr/local/pgsql/data
We are initializing the database system with username postgres (uid=40).
This user will own all the files and must also own the server process.
Creating Postgres database system directory /var/lib/pgsql/base
Creating template database in /var/lib/pgsql/base/template1
Creating global classes in /var/lib/pgsql/base
Adding template1 database to pg_database...
Vacuuming template1
Creating public pg_user view
Creating view pg_rules
Creating view pg_views
Creating view pg_tables
Creating view pg_indexes
Loading pg_description

网管朋友网www_bitscn_net

-D 选项声明数据存储的位置。你可以使用任何你想用的路径,它不必在安装目录里。在运行 initdb 前只要确保数据库超级用户帐户可以写(或者创建)那个目录就行了。

网管论坛bbs_bitsCN_com

8、启动postgresql服务; 网管朋友网www_bitscn_net

前面的步骤应该已经告诉你如何启动数据库服务器。现在就做。
$ /usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data
这样将在前台启动数据库服务器。要把它放到后台,使用 -S。

中国网管联盟bitsCN.com

4.配置Postgresql的脚本文件

网管有家bitscn.net

配置“/etc/rc.d/ini.d/postgresql”脚本文件,用来启动和停止PostgreSQL服务器

中国网管联盟bitsCN.com

创建“postgresql”脚本文件(touch /etc/rc.d/init.d/postgresql)并加入:

中国网管联盟bitsCN.com

#! /bin/sh
# postgresql This is the init script for starting up the PostgreSQL
# server
# chkconfig: 345 85 15
# description: Starts and stops the PostgreSQL backend daemon that handles
# all database requests.
# processname: postmaster
# pidfile: /var/run/postmaster.pid
#
# Source function library.
. /etc/rc.d/init.d/functions
# Get config.
. /etc/sysconfig/network
# Check that networking is up.
# Pretty much need it for postmaster.
[ ${NETWORKING} = \\"no\\" ] && exit 0
[ -f /usr/bin/postmaster ]@# @#exit 0
# This script is slightly unusual in that the name of the daemon (postmaster)
# is not the same as the name of the subsystem (postgresql)
# See how we were called.
case \\"$1\\" in
start)
echo -n \\"Checking postgresql installation: \\"
# Check for the PGDATA structure
if [ -f /var/lib/pgsql/PG_VERSION ] && [ -d /var/lib/pgsql/base/template1 ]
then
# Check version of existing PGDATA 网管联盟bitsCN@com
if [ `cat /var/lib/pgsql/PG_VERSION` != 6.5 ]
then
echo \\"old version. Need to Upgrade.\\"
echo \\"See /usr/doc/postgresql-6.5.2/README.rpm for more information.\\"
exit 1
else
echo \\"looks good!\\"
fi
# No existing PGDATA! Initdb it.
else
echo \\"no database files found.\\"
if [ ! -d /var/lib/pgsql ]
then
mkdir -p /var/lib/pgsql
chown postgres.postgres /var/lib/pgsql
fi
su -l postgres -c /usr/bin/initdb --pglib=/usr/lib/pgsql --pgdata=/var/lib/pgsql
fi
# Check for postmaster already running...
pid=`pidof postmaster`
if [ $pid ]
then
echo \\"Postmaster already running.\\"
else
#all systems go -- remove any stale lock files
rm -f /tmp/.s.PGSQL.* > /dev/null
echo -n \\"Starting postgresql service: \\"
su -l postgres -c /usr/bin/postmaster -i -S -D/var/lib/pgsql
sleep 1
pid=`pidof postmaster`
if [ $pid ]
then
echo -n \\"postmaster [$pid]\\"
touch /var/lock/subsys/postgresql

中国网管论坛bbs.bitsCN.com

echo $pid > /var/run/postmaster.pid
echo
else
echo \\"failed.\\"
fi
fi
;;
stop)
echo -n \\"Stopping postgresql service: \\"
killproc postmaster
sleep 2
rm -f /var/run/postmaster.pid
rm -f /var/lock/subsys/postgresql
echo
;;
status)
status postmaster
;;
restart)
$0 stop
$0 start
;;
*)
echo \\"Usage: postgresql {start|stop|status|restart}\\"
exit 1
esac
exit 0 网管论坛bbs_bitsCN_com

  网管网www.bitscn.com

中国网管论坛bbs.bitsCN.com

TAGs   配置   服务器   数据库   用户   安装   postgresql   PostgreSQL      
 上一篇:在Linux上安装postgresql的全过程   下一篇:从网络上登录其它计算机的PostgreSQL
PostgreSql服务器的配置 评论:
loading.. 评论加载中…
评论:请自觉遵守互联网相关政策法规,评论不得超过250字。

验证码: 注册用户
本类热门排行:
最新推荐文章:
网管论坛交流: