您的位置:首页 > 运维架构 > Linux

CentOS下PostgreSQL 的安装与配置

2016-05-11 19:37 549 查看
一、前言
PostgreSQL通常也简称Postgres,是一个关系型数据库管理系统,适用于各种Linux操作系统、Windows、Solaris、BSD和Mac
OS X。PostgreSQL遵循PostgreSQL许可,是一个开源软件。PostgreSQL由PostgreSQL全球开发组开发,由极少数的公司志愿组成并进行监督管理,这些公司有红帽、EnterpriseDB等。
PostgreSQL的知名度越来越大,这是理所当然的:它是如此可靠、高效。与传统企业级关系型数据库相比,PostgreSQL完全基于社区驱动,有着丰富的工具和文档,形成了一个完善的生态系统。
目前搜索的大部分CentOS下安装均是用于Centos6.X的部分命令已经有很大变化,本文主要记录在Linux Centos 7.1下安装PostgreSQL的过程。
二、安装PostgreSQL源
CentOS 6.x 32bit

sudo rpm -Uvh http://yum.postgresql.org/9.4/redhat/rhel-6-i386/pgdg-centos94-9.4-1.noarch.rpm[/code] 
CentOS 6.x 64bit

sudo rpm -Uvh http://yum.postgresql.org/9.4/redhat/rhel-6-x86_64/pgdg-centos94-9.4-1.noarch.rpm[/code] 
CentOS 7 64bit

sudo rpm -Uvh http://yum.postgresql.org/9.4/redhat/rhel-7-x86_64/pgdg-centos94-9.4-1.noarch.rpm[/code] 
在添加源的步骤中并没有太多的区别,主要是源的地址有一定的变化。
三、执行安装命令

sudo yum update
sudo yum install postgresql94-server postgresql94-contrib


四、验证是否安装成功

sudo rpm -aq| grep postgres


执行结果如下:

postgresql94-libs-9.4.1-1PGDG.rhel7.x86_64
postgresql94-server-9.4.1-1PGDG.rhel7.x86_64
postgresql94-9.4.1-1PGDG.rhel7.x86_64
postgresql94-contrib-9.4.1-1PGDG.rhel7.x86_64


五、初始化数据库
CentOS 6.x 系统

sudo service postgresql-9.4 initdb


CentOS 7 [b]系统[/b]

sudo /usr/pgsql-9.4/bin/postgresql94-setup initdb


在初始化数据库时可以指定参数 --PGDATA=“/data”,该参数是用于指明数据库的数据文件的存放路径,默认是在/var/lib/pgsql/9.4/data路径下。
如果我在CentOS 7下执行 service postgresql-9.4 initdb 将会报如下问题

The service command supports only basic LSB actions (start, stop, restart, try-restart, reload, force-reload, status). For other actions, please try to use systemctl.


六、启动服务并设置为开机启动
CentOS 6.x 系统

sudo service postgresql-9.4 start
sudo chkconfig postgresql-9.4 on


CentOS 7 [b]系统[/b]

sudo systemctl enable postgresql-9.4
sudo systemctl start postgresql-9.4


七、开放防火墙端口
CentOS 6.x 系统

vi /etc/sysconfig/iptables


按下I进入输入模式,在文件中加入一下语句

-A INPUT -m state --state NEW -m tcp -p tcp --dport 5432 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT


输入完成后按ESC退出编辑模式,输入:wq退出VI编辑界面。
重启防火墙服务

sudo service iptables restart


CentOS 7 [b]系统[/b]

sudo firewall-cmd --permanent --add-port=5432/tcp
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --reload


八、访问PostgreSQL

su - postgres


输出结果如下:

上一次登录:一 5月 18 15:17:29 CST 2015pts/0 上
-bash-4.2$


输入命令psql将看到PostgrSQL的版本信息。

psql (9.4.1)
输入 "help" 来获取帮助信息.


九、设置postgres用户密码

postgres=# \password postgres


以上操作基本完成整个PostgreSQL的安装。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: