前言
如题,本篇文章记录一下在Linux CentOS 7中安装PostgresSQL的整个过程以及数据库配置等,在Linux系统中,PostgreSQL的安装方式分两种,分别是:
- 二进制安装包安装
- 源码编译安装
由于我们没有什么特殊需求所在在此选择较为简单的方式——二进制安装包安装,二进制包安装的方法一般都是通过不同发行版本的Linux下的包管理器进行的,例如Debian和Ubuntu下是使用apt-get命令或aptitude命令来安装,命令如下:
sudo apt-get install postgresql而在RedHat。CentOS或Fedora下则使用yum工具来安装PostgreSQL,命令如下:
yum install postgresql-server.x86_64先大概了解一下,下面就具体介绍一下整个安装过程和细节。
安装PostgreSQL
我选择的是yum安装,需求是9.3的版本,所以直接输入软件库的位置即可:
yum install http://yum.postgresql.org/9.3/redhat/rhel-6-x86_64/pgdg-redhat93-9.3-1.noarch.rpm安装完rpm包后,就可以继续安装PostgreSQL版本中包含的软件包了,包含一些必备的组件,如官方给出的Guide:
如上图,由于我们这里安装的是9.3版本,所以直接输入以下命令安装即可:
yum install postgresql93-server postgresql93-contrib安装日志如下:
安装完成后首先要做的是初始化db,如官方给出的Guide:
这里需要注意的是要到切换到pg的安装目录中执行初始化命令:
[root@localhost /]# cd usr/bin/postgresql93-setup initdbInitializing database ... OK初始化成功就可以启动数据库了并登录了:
如上图所示,可以看到已经成功启动服务并查询了数据库版本,接下来通过
l命令可以查看目前有哪些数据库:
如上图,可以看到默认有4个数据库,
q为退出命令。为了安全起见,接下来我们修改一下postgres用户的密码,默认是空:
alter user postgres with password "111111";如下图:
最后如果是作为DB服务器的话需要将数据库服务设置为开机启动:
关于安装相关的设置至此就已全部结束,接下来看看客户端工具(Navicat)如何连接数据库。
客户端连接PostgreSQL
如题,既然客户端要连接,首先第一步肯定是开放端口了,在CentOS 7中引入了一个更强大的防火墙——Firewall,所以我们需要在Firewall中开启PostgreSQL的默认端口5432,也就是将5432端口加入到zone(Firewall的新特性,简单讲它的作用就是定义了网络区域网络连接的可信等级)中。命令如下:
firewall-cmd --zone=public --add-port=5432/tcp --permanent这样就成功的将5432端口加入了public区域中,permanent参数表示永久生效,即重启也不会失效,最后不要忘记更新防火墙规则:
firewall-cmd --reloadOK,下面看一下public区域下所有已打开的端口,命令如下:
firewall-cmd --zone=public --list-ports可以看到5432端口已经成功开放:
只开放了端口并不够,PostgreSQL在安全方面也做的很好,它可以指定哪些ip地址能远程访问数据库服务器,默认情况下是只监听本地,所以首先需要让PostgreSQL监听整个网络,首先进入PostgreSQL的安装目录,找到配置文件,路径如下:
cd /var/lib/pgsql/9.3/data/主要修改以下两个文件:
如上图,首先的PostgreSQL的主配置文件postgresql.conf,将listen_addresses前的#去掉,并将listen_addresses = ‘localhost’改成listen_addresses = ‘*’:
接下来要修改pg_hba.conf文件,将允许访问的ip地址加进列表,格式为”Type Database User Address Method”,比如我希望只有192.168.111.1这个地址能远程访问PostgreSQL数据库的话,加入下面的配置即可:
最后重启数据库服务使配置生效:
systemctl restart postgresql-9.3.service此时就用主机的Navicat(192.168.111.1)连接虚拟机中的PostgreSQL服务器测试一下:
如上图,可以看到成功连接,至此关于PostgreSQL的安装就已全部介绍完毕。
总结
简单记录一下在Linux CentOS 7系统下安装PostgreSQL 9.3版本的全过程以及相关的配置,The End。------------------------------------华丽丽的分割线------------------------------------在CentOS 6.5上编译安装PostgreSQL 9.3数据库 http://www.linuxidc.com/Linux/2016-06/132272.htmCentOS 6.3环境下yum安装PostgreSQL 9.3 http://www.linuxidc.com/Linux/2014-05/101787.htmPostgreSQL缓存详述 http://www.linuxidc.com/Linux/2013-07/87778.htmWindows平台编译 PostgreSQL http://www.linuxidc.com/Linux/2013-05/85114.htmUbuntu下LAPP(Linux+Apache+PostgreSQL+PHP)环境的配置与安装 http://www.linuxidc.com/Linux/2013-04/83564.htmUbuntu上的phppgAdmin安装及配置 http://www.linuxidc.com/Linux/2011-08/40520.htmCentOS平台下安装PostgreSQL9.3 http://www.linuxidc.com/Linux/2014-05/101723.htmPostgreSQL配置Streaming Replication集群 http://www.linuxidc.com/Linux/2014-05/101724.htm------------------------------------华丽丽的分割线------------------------------------
PostgreSQL 的详细介绍:请点这里
PostgreSQL 的下载地址:请点这里更多CentOS相关信息见CentOS 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=14
本文永久更新链接地址