- 系统信息;
#head -1 /etc/issue
CentOS release 6.5 (Final)
- 安装postgresql9.3版本;
#rpm -ivh http://yum.postgresql.org/9.3/redhat/rhel-6-x86_64/pgdg-centos93-9.3-1.noarch.rpm
# yum install postgresql93 postgresql93-server postgresql93-libs postgresql93-contrib postgresql93-devel
- 自定义数据库数据路径;
因为本地硬盘存储不靠谱,所以将数据放于一个本环境中已有的nfs存储中,本机已经将nfs挂载于/storage目录,若无此需求的默认即可;
#vim /etc/init.d/postgresql-9.3
PGDATA=/var/lib/pgsql/9.3/data
PGLOG=/var/lib/pgsql/9.3/pgstartup.log
PGUPLOG=/var/lib/pgsql/$PGMAJORVERSION/pgupgrade.log
将以上三个路径修改为自定义路径如下:(实际只需要修改PGDATA参数即可)
PGDATA=/storage/pgsql/9.3/data
PGLOG=/storage/pgsql/9.3/pgstartup.log
PGUPLOG=/storage/pgsql/$PGMAJORVERSION/pgupgrade.log
- 初始化&启动数据库&加入开机自启动&查看数据库状态;
#service postgresql-9.3 initdb #初始化
!初始化成功后所有数据库的配置文件全部都在刚才自定义的目录内/storage/pgsql/9.3/data
#service postgresql-9.3 start #启动
#chkconfig postgresql-9.3 on #加入开机自启动
#service postgresql-9.3 status #查看当前postgresql运行的状态,如下即可
postgresql-9.3 (pid 5093) is running...
- 配置数据库可以使用windows下的pgAdmin工具或其他工具连接;
#cd /storage/pgsql/9.3/data
#vim postgresql.conf
取消#listen_addresses = ‘localhost‘ 行注释并修改为listen_addresses = ‘*‘
#vim pg_hba.conf
在行尾 加入“host all all 0.0.0.0/0 md5” 表示允许所有主机均可连接
#su postgres
$psql -p 5432
$alter user postgres with password ‘123456’ #设置postgres 用户密码
$\q
$\exit
# service postgresql-9.3 restart
# service postgresql-9.3 reload
postgresql数据库已经装好了,并且可以正常使用,如下图:
- 安装postgis扩展&使用postgis扩展;
#yum install postgis2_93
#su postgres
$psql -p 5432
$CREATE EXTENSION postgis;
CREATE EXTENSION
$\q
$\exit
- 安装postgis后,数据库的变化-如图;
#会增加响应的函数
- 安装phpPgAdmin-方便从web页面管理postgresql数据库(类似phpmyadmin);
#yum list | grep phpPgAdmin #(查看一下你的源是有这个包)
phpPgAdmin.noarch 5.1-1.rhel6 @pgdg93
#yum install phpPgAdmin httpd
#vim /etc/httpd/conf.d/phpPgAdmin.conf 作如下修改:
‘‘‘
Alias /phpPgAdmin /usr/share/phpPgAdmin
<Location /phpPgAdmin>
Order deny,allow
#Deny from all
#Allow from 192.168.0.0/16
Allow from all
#Allow from ::1
# Allow from .example.com
</Location>
‘‘‘
service httpd restart
chkconfig httpd on
9. 现在可以使用http://x.x.x.x/phpPgAdmin 访问管理页面:
#登录可能会失败 因为SELLinux可能限制用户连接到PostgreSQL,只需输入以下命令更改即可
#执行这个命令”setsebool -P httpd_can_network_connect_db 1“成功后 即可登录