PostgreSQL 从入门到出门 第 3 篇 PostgreSQL 安装

版权声明:本站不全为博主原创文章,欢迎转载,转载记得标明出处。^-^ https://blog.csdn.net/horses/article/details/86741646

文章目录

上一篇简单介绍了 PostgreSQL 数据库。PostgreSQL 支持各种平台,包括 Linux 、Windows、FreeBSD、OpenBSD、NetBSD、macOS、AIX、HP/UX 以及 Solaris。不同的平台支持不同的安装方法,通常可以分为以下几类:

  • 二进制安装包,通过官方下载页面,选择相应的操作系统版本进行下载安装。某些操作系统(Windows、macOS)提供了图形化的安装工具。
    Binary packages
  • 源码编译安装,适合高级用户,通过 ftp 文件浏览器或者 git.postgresql.org 下载源文件代码,参考官方文档执行源码安装。
  • 第三方发行版,同样通过官方下载页面,可以找到许多第三方提供的打包软件,例如 LAPP 组合。

本文主要介绍如何通过 Yum 源安装 PostgreSQL 软件,这种方式适用于所有的 Red Hat Linux 家族以及衍生版:

  • Red Hat Enterprise Linux
  • CentOS
  • Fedora
  • Scientific Linux
  • Oracle Linux

接下来我们基于 CentOS 7 X86_64 安装 PostgreSQL 11。第一步就是下载并安装 Yum 源,在下载页面点击“Linux -
Red Hat family Linux (including CentOS/Fedora/Scientific/Oracle variants)
”,然后在页面选择相应的 PostgreSQL 版本和操作系统平台。
Yum Repository
按照第 4 步提供的命令安装 Yum 源(使用 root 用户执行操作):

yum install https://download.postgresql.org/pub/repos/yum/11/redhat/rhel-7-x86_64/pgdg-centos11-11-2.noarch.rpm

提示输入信息时,输入 “y” 即可。

安装之前先确认是否已经存在 PostgreSQL:

rpm -qa | grep postgres

如果存在,使用以下命令删除之前的安装包:

rpm -e postgresqlXX

然后安装页面提示执行第 5 步安装 PostgreSQL 客户端和依赖库:

yum install postgresql11

接下来第 6 步是安装 PostgreSQL 服务器:

yum install postgresql11-server

至此,完成了软件的安装。第 7 步是初始化一个数据库,并且启动 PostgreSQL 服务和开机后的自启动:

/usr/pgsql-11/bin/postgresql-11-setup initdb
systemctl enable postgresql-11
systemctl start postgresql-11

执行完成后,可以通过操作系统的 ps 命令查看 PostgreSQL 后台进程:

[root@centos7 ~]# ps -ef | grep postgres | grep -v 'grep'
postgres 29118     1  0 16:57 ?        00:00:00 /usr/pgsql-11/bin/postmaster -D /var/lib/pgsql/11/data/
postgres 29120 29118  0 16:57 ?        00:00:00 postgres: logger   
postgres 29122 29118  0 16:57 ?        00:00:00 postgres: checkpointer   
postgres 29123 29118  0 16:57 ?        00:00:00 postgres: background writer   
postgres 29124 29118  0 16:57 ?        00:00:00 postgres: walwriter   
postgres 29125 29118  0 16:57 ?        00:00:00 postgres: autovacuum launcher   
postgres 29126 29118  0 16:57 ?        00:00:00 postgres: stats collector   
postgres 29127 29118  0 16:57 ?        00:00:00 postgres: logical replication launcher

通过以上输出,可以看出 PostgreSQL 安装在“/usr/pgsql-11”目录中,初始化数据库的数据目录为“/var/lib/pgsql/11/data”。同时,操作系统创建了一个新的用户“postgres”。

除此之外,还可以安装一些第三方的扩展包和管理工具:

yum install postgresql11-contrib
yum pgadmin4

最后,使用命令行工具“psql”测试数据库的连接:

[root@centos7 ~]# su - postgres
Last login: Fri Jan  4 17:19:04 EST 2019 on pts/3
-bash-4.2$ psql
psql (11.1)
Type "help" for help.

postgres=# select version();
                                                 version                                                 
---------------------------------------------------------------------------------------------------------
 PostgreSQL 11.1 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-28), 64-bit
(1 row)

postgres=# 

默认情况下,PostgreSQL 只接收本机的连接请求。如果需要通过远程客户端进行连接,可以执行以下两个步骤(使用 postgres 用户操作):

  • 修改 postgresql.conf 文件中的监听地址,该文件位于数据目录(/var/lib/pgsql/11/data/)中。
    找到以下内容:
    #listen_addresses = 'localhost'         # what IP address(es) to listen on;
    
    将 ‘localhost’ 修改为服务器的 IP 地址或者 ‘*’:
    listen_addresses = '192.68.56.103'
    
  • 修改 pg_hba.conf 文件中的客户端认证配置,该文件位于数据目录(/var/lib/pgsql/11/data/)中。
    增加以下内容,允许所有客户端 IP 访问:
    host	all		all		0.0.0.0/0			md5
    
    重启服务即可(使用 root 用户操作):
    systemctl restart postgresql-11
    

对于 Windows 和 macOS 用户,推荐使用图形化工具进行安装。可以通过官方下载页面找到相应操作系统的链接。也可以直接使用以下链接进行安装。

人生本来短暂,你又何必匆匆!点个赞再走吧!

猜你喜欢

转载自blog.csdn.net/horses/article/details/86741646
今日推荐