【说明】
最近需要安装postgresql,直接网络安装倒是简单,但是安装目录不灵活,所以自己源码包安装了一下。发现自己对linux下的软件安装还是不理解,所以借postgresql的安装研究了一下源码包安装软件的方法,做一下记录。
【环境】
我使用的是lubuntu12.04,pos源码包是postgresql-9.3.2.tar.gz,地址:www.postgresql.org/ftp/source/v9.3.2/
一.下载源码包(地址如上),放入linux环境中,我放在/opt/下(root用户权限),解压
tar xvzf *******.tar.gz
二.解压后生成postgresql-9.3.2,进入此目录执行
./configure --prefix=/opt/postgres 这个命令用于检查系统是否有编译时所需的库以及版本是否满足,为下一步的编译做准备,这里同时也为安装指定目录,默认在/usr/local下,一般自己指定目录较好.
这里可能缺少包:apt-get install libreadline6-dev apt-get install zlib1g-dev (1是数字)
三.检查和准备通过后,开始执行
make 这是编译命令,然后执行安装命令make install,这里就已经安装完毕,下面进行配 置
四.配置postgresql。
1.创建postgres用户 useradd -m -s /bin/bash -g root postgres(ubuntu创建用户比较麻烦,不这样的话会有问题,删除用户也比较麻烦),修改密码:passwd postgres
2.设置postgres用户的环境变量
su - postgres
cd ~进入postgres主目录
vi ~/.profile(这个文件名一般是这个,根据自己的版本决定)加入以下:
export PGHOME=/opt/postgres
export PGDATA=/home/postgres/data
export PATH=$PATH:$HOME/bin:$PGHOME/bin
保存退出后,source ~/.profile生效
3.初始化postgresql 在postgres主目录下执行
initdb (这里是上面配置data所在目录)
五.启动postgresql实例(与启动服务不同)
pg_ctl start /stop
六.查看进程:
\ cd
七.启动post服务
将源码目录下的/contrib/start-scripts/linux复制到/etc/init.d下更名为postgresql,加上读执行权限。修改此文件的变量如下两个:
执行启动命令即可:service postgresql start
八.开机启动
hkconfig --add posrtgresql