Postgresql安装

安装postgresql数据的主要两篇参考文档链接:

http://www.cnblogs.com/marsprj/archive/2013/02/08/2893519.html

http://www.cnblogs.com/mchina/archive/2012/06/06/2539003.html

 

1、下载指定版本的postgresql,这里下载postgresql-9.4.5,进行解压,指定安装目录:./configure --prefix=/usr/local/postgresql,然后make,make install(如果安装目录搞错要卸载重新安装,因为指定了安装目录,可以直接删除已安装目录的,再次进行安装就可以了)。

     可能会报缺少readline包,yum install readline-devel -y 安装再编译安装即可

2、useradd datangpostgres,创建数据库用户,用指定用户密码:passwd datangpostgres(设置完用户名和密码就先切换到datangpostgres用户下,之后的步骤也用这个用户执行),修改环境变量值,注意这里必须修改datangpostgres用户的环境变量,不能修改/etc/profile文件,因为数据库是用datangpostgres用户初始化并连接的,环境变量写到/etc/profile中会导致数据库无法启动,改完环境变量再进行数据库初始化才不会报错。

    su – dangtangpostgres 进入 dangtangpostgres用户,将下列几行加入datangpostgres用户的.bash_profile文件中

export PGHOME=/usr/local/postgresql

export PGDATA=/home/datangpostgres/database

PATH=$PATH:$HOME/bin:$PGHOME/bin

export PATH

     用source ~/.bash_profile使修改的.bash_profile文件中的环境变量生效,创建数据库实例存放的位置:mkdir /home/datangpostgres/database,如果需要的话赋予文件夹datangpostgres权限:chown datangpostgres:datangpostgres  database ;

3、初始化数据库;

   用datangpostgres用户进入到/home/datangpostgres/database 中执行initdb命令初始化数据库,按照提示一直回车继续,设置初始数据库密码(然而实际操作了几次并没有这一步,数据库用户名和密码都是安装时使用的系统用户的用户名和密码)

4、复制安装目录下的linux文件到/etc/init.d/中,并将linux(

加上可执行权限:chmod + linux)名称重命名为postgresql,

cp /usr/local/postgresql-9.4.5/contrib/start-scripts/linux /etc/init.d/postgresql,修改启动文件中的prefix及PGDDATA,修改下列3行加入

 prefix=/usr/local/postgresql   (软件安装位置)

PGDATA="/home/datangpostgres/database"  (数据目录)

PGUSER=datangpostgres  (数据库用户名)

注:一定要修改PGUSER为指定用户名,否则会一直报错。

参考后面的补充

5、启动postgrepsql数据库

   执行命令 /etc/init.d/postgresql start 启动数据库

   或者进入到用 datangpostgres 用户 进入到/usr/local/postgresql/bin目录

 执行pg_ctl start/stop 启动或停止数据库

6、配置postgresql数据库可以远程连接访问(执行这一步之前,先将postgres数据停止运行)

   1)vim /home/datangpostgres/database/postgresql.conf

   修改 listen_addresses = 'localhost' 为 listen_addresses = '*'    记得将前面的#号去掉

   2)vim /home/datangpostgres/database/pg_hba.conf

   修改 # IPv4 local connections:

host    all             all             127.0.0.1/32            trust

host    all             all             0.0.0.0/0                  trust

 

补充

7、设置PostgreSQL开机自启动

PostgreSQL的开机自启动脚本位于PostgreSQL源码目录的contrib/start-scripts路径下:linux文件即为linux系统上的启动脚本

 

1)修改linux文件属性,添加X属性

#chmod a+x linux

2) 复制linux文件到/etc/init.d目录下,更名为postgresql

#cp linux /etc/init.d/postgresql

3)修改/etc/init.d/postgresql文件的两个变量

prefix设置为postgresql的安装路径:/opt/pgsql-9.1.2

PGDATA设置为postgresql的数据目录路径:

PGUSER=datangpostgres  (数据库用户名)  千万注意还要修改这个

 

4) 执行service postgresql start,就可以启动PostgreSQL服务

#service postgresql start

 

 

5)设置postgresql服务开机自启动

#chkconfig --add postgresql

# chkconfig postgresql on        (有些博客还加了这一条,上面那条命令执行完,可以查看是否已经开机启动,待测试)

# chkconfig --list |grep postgres

执行上面的命令,就可以实现postgresql服务的开机自启动。

 

posted @ 2018-07-16 20:35  NLBSN  阅读(405)  评论(0编辑  收藏  举报