阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Linux CentOS 7 安装PostgreSQL 9.3

203次阅读
没有评论

共计 2968 个字符,预计需要花费 8 分钟才能阅读完成。

前言

如题,本篇文章记录一下在 Linux CentOS 7 中安装 PostgresSQL 的整个过程以及数据库配置等,在 Linux 系统中,PostgreSQL 的安装方式分两种,分别是:

  1. 二进制安装包安装
  2. 源码编译安装

由于我们没有什么特殊需求所在在此选择较为简单的方式——二进制安装包安装,二进制包安装的方法一般都是通过不同发行版本的 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:
Linux CentOS 7 安装 PostgreSQL 9.3

如上图,由于我们这里安装的是 9.3 版本,所以直接输入以下命令安装即可:

yum install postgresql93-server postgresql93-contrib

安装日志如下:
Linux CentOS 7 安装 PostgreSQL 9.3
Linux CentOS 7 安装 PostgreSQL 9.3
Linux CentOS 7 安装 PostgreSQL 9.3

安装完成后首先要做的是初始化 db,如官方给出的 Guide:
Linux CentOS 7 安装 PostgreSQL 9.3

这里需要注意的是要到切换到 pg 的安装目录中执行初始化命令:

[root@localhost /]# cd usr/bin/postgresql93-setup initdb
Initializing database ... OK

初始化成功就可以启动数据库了并登录了:
Linux CentOS 7 安装 PostgreSQL 9.3

如上图所示,可以看到已经成功启动服务并查询了数据库版本,接下来通过 \l 命令可以查看目前有哪些数据库:
Linux CentOS 7 安装 PostgreSQL 9.3

如上图,可以看到默认有 4 个数据库,\q为退出命令。为了安全起见,接下来我们修改一下 postgres 用户的密码,默认是空:

alter user postgres with password '111111';

如下图:
Linux CentOS 7 安装 PostgreSQL 9.3

最后如果是作为 DB 服务器的话需要将数据库服务设置为开机启动:
Linux CentOS 7 安装 PostgreSQL 9.3

关于安装相关的设置至此就已全部结束,接下来看看客户端工具(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 --reload

OK,下面看一下 public 区域下所有已打开的端口,命令如下:

firewall-cmd --zone=public --list-ports

可以看到 5432 端口已经成功开放:
Linux CentOS 7 安装 PostgreSQL 9.3

只开放了端口并不够,PostgreSQL 在安全方面也做的很好,它可以指定哪些 ip 地址能远程访问数据库服务器,默认情况下是只监听本地,所以首先需要让 PostgreSQL 监听整个网络,首先进入 PostgreSQL 的安装目录,找到配置文件,路径如下:

 cd /var/lib/pgsql/9.3/data/

主要修改以下两个文件:
Linux CentOS 7 安装 PostgreSQL 9.3

如上图,首先的 PostgreSQL 的主配置文件 postgresql.conf,将 listen_addresses 前的 #去掉,并将 listen_addresses =‘localhost’改成 listen_addresses =‘*’:
Linux CentOS 7 安装 PostgreSQL 9.3

接下来要修改 pg_hba.conf 文件,将允许访问的 ip 地址加进列表,格式为”Type Database User Address Method”,比如我希望只有 192.168.111.1 这个地址能远程访问 PostgreSQL 数据库的话,加入下面的配置即可:
Linux CentOS 7 安装 PostgreSQL 9.3

最后重启数据库服务使配置生效:

systemctl restart postgresql-9.3.service

此时就用主机的 Navicat(192.168.111.1)连接虚拟机中的 PostgreSQL 服务器测试一下:
Linux CentOS 7 安装 PostgreSQL 9.3

如上图,可以看到成功连接,至此关于 PostgreSQL 的安装就已全部介绍完毕。

总结

简单记录一下在 Linux CentOS 7 系统下安装 PostgreSQL 9.3 版本的全过程以及相关的配置,The End。

———————————— 华丽丽的分割线 ————————————

在 CentOS 6.5 上编译安装 PostgreSQL 9.3 数据库 http://www.linuxidc.com/Linux/2016-06/132272.htm

CentOS 6.3 环境下 yum 安装 PostgreSQL 9.3 http://www.linuxidc.com/Linux/2014-05/101787.htm

PostgreSQL 缓存详述 http://www.linuxidc.com/Linux/2013-07/87778.htm

Windows 平台编译 PostgreSQL http://www.linuxidc.com/Linux/2013-05/85114.htm

Ubuntu 下 LAPP(Linux+Apache+PostgreSQL+PHP)环境的配置与安装 http://www.linuxidc.com/Linux/2013-04/83564.htm

Ubuntu 上的 phppgAdmin 安装及配置 http://www.linuxidc.com/Linux/2011-08/40520.htm

CentOS 平台下安装 PostgreSQL9.3 http://www.linuxidc.com/Linux/2014-05/101723.htm

PostgreSQL 配置 Streaming Replication 集群 http://www.linuxidc.com/Linux/2014-05/101724.htm

———————————— 华丽丽的分割线 ————————————

PostgreSQL 的详细介绍:请点这里
PostgreSQL 的下载地址:请点这里

更多 CentOS 相关信息见CentOS 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=14

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-09/135538.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-22发表,共计2968字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中