centos7 在线安装新版postgresql10

一、更新源

地址:https://yum.postgresql.org/repopackages.php

《centos7 在线安装新版postgresql10》 yum源

获取到以上yum源链接地址:
centos7:
https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-2.noarch.rpm

centos6:
https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-6-x86_64/pgdg-centos10-10-2.noarch.rpm

安装yum源:

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

二、安装postgresql

  1. 先查看postgreql源
[root@Hemny ~]# yum list | grep postgresql
freeradius-postgresql.x86_64                3.0.13-9.el7_5             updates  
libreoffice-postgresql.x86_64               1:5.3.6.1-10.el7           base     
pcp-pmda-postgresql.x86_64                  3.12.2-5.el7               base     
postgresql.i686                             9.2.24-1.el7_5             updates  
postgresql.x86_64                           9.2.24-1.el7_5             updates  
postgresql-contrib.x86_64                   9.2.24-1.el7_5             updates  
postgresql-devel.i686                       9.2.24-1.el7_5             updates  
postgresql-devel.x86_64                     9.2.24-1.el7_5             updates  
postgresql-docs.x86_64                      9.2.24-1.el7_5             updates  
postgresql-jdbc.noarch                      42.2.5-1.rhel7             pgdg10   
postgresql-jdbc-javadoc.noarch              42.2.5-1.rhel7             pgdg10   
postgresql-libs.i686                        9.2.24-1.el7_5             updates  
postgresql-libs.x86_64                      9.2.24-1.el7_5             updates  
postgresql-odbc.x86_64                      09.03.0100-2.el7           base     
postgresql-plperl.x86_64                    9.2.24-1.el7_5             updates  
postgresql-plpython.x86_64                  9.2.24-1.el7_5             updates  
postgresql-pltcl.x86_64                     9.2.24-1.el7_5             updates  
postgresql-server.x86_64                    9.2.24-1.el7_5             updates  
postgresql-static.i686                      9.2.24-1.el7_5             updates  
postgresql-static.x86_64                    9.2.24-1.el7_5             updates  
postgresql-test.x86_64                      9.2.24-1.el7_5             updates  
postgresql-unit10.x86_64                    7.0-1.rhel7                pgdg10   
postgresql-unit10-debuginfo.x86_64          7.0-1.rhel7                pgdg10   
postgresql-upgrade.x86_64                   9.2.24-1.el7_5             updates  
postgresql10.x86_64                         10.6-1PGDG.rhel7           pgdg10   
postgresql10-contrib.x86_64                 10.6-1PGDG.rhel7           pgdg10   
postgresql10-debuginfo.x86_64               10.6-1PGDG.rhel7           pgdg10   
postgresql10-devel.x86_64                   10.6-1PGDG.rhel7           pgdg10   
postgresql10-docs.x86_64                    10.6-1PGDG.rhel7           pgdg10   
postgresql10-libs.x86_64                    10.6-1PGDG.rhel7           pgdg10   
postgresql10-odbc.x86_64                    10.03.0000-1PGDG.rhel7     pgdg10   
postgresql10-plperl.x86_64                  10.6-1PGDG.rhel7           pgdg10   
postgresql10-plpython.x86_64                10.6-1PGDG.rhel7           pgdg10   
postgresql10-pltcl.x86_64                   10.6-1PGDG.rhel7           pgdg10   
postgresql10-server.x86_64                  10.6-1PGDG.rhel7           pgdg10   
postgresql10-tcl.x86_64                     2.4.0-1.rhel7              pgdg10   
postgresql10-tcl-debuginfo.x86_64           2.3.1-1.rhel7              pgdg10   
postgresql10-test.x86_64                    10.6-1PGDG.rhel7           pgdg10   
postgresql_anonymizer10.noarch              0.2.1-1.rhel7              pgdg10   
qt-postgresql.i686                          1:4.8.7-2.el7              base     
qt-postgresql.x86_64                        1:4.8.7-2.el7              base     
qt5-qtbase-postgresql.i686                  5.9.2-3.el7                base     
qt5-qtbase-postgresql.x86_64                5.9.2-3.el7                base     

postgresql10-server【postgresql的服务端】
postgresql10-contrib【postgresql的extension,提供较多的拓展功能】
postgresql10【postgresql的数据库工具组件,包含很多管理数据库组件】
postgresql10-libs【postgresql的动态库,依赖安装】
postgresql10-odbc【postgresql的odbc相关组件】
postgresql10-plperl【postgresql的PL/Perl,如果使用Perl开发函数,需要安装】
postgresql10-plpython【postgresql的PL/python,如果使用python开发函数,需要安装】
postgresql10-pltcl【postgresql的PL/tcl,如果使用tcl开发函数,需要安装】
postgresql10-devel【postgresql的开发包,包含.h头文件等】
postgresql10-test【postgresql的回归测试组件】
postgresql10-docs【postgresql的说明文档】

  1. 安装postgresql。
    这次安装的是相对完整的服务端,包括组件postgresql10-server、postgresql10-contrib、postgresql10、postgresql10-libs、postgresql10-plperl、postgresql10-plpython、postgresql10-pltcl。

注意:不包括开发、测试、调试、文档。
输入命令:

yum install postgresql10-server postgresql10-contrib postgresql10 postgresql10-libs postgresql10-plperl postgresql10-plpython postgresql10-pltcl

安装过程:

[root@Hemny ~]# yum install postgresql10-server postgresql10-contrib postgresql10 postgresql10-libs postgresql10-plperl postgresql10-plpython postgresql10-pltcl
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.nju.edu.cn
 * extras: mirrors.163.com
 * updates: mirrors.163.com
Resolving Dependencies
--> Running transaction check
---> Package postgresql10.x86_64 0:10.6-1PGDG.rhel7 will be installed
--> Processing Dependency: libicu for package: postgresql10-10.6-1PGDG.rhel7.x86_64
---> Package postgresql10-contrib.x86_64 0:10.6-1PGDG.rhel7 will be installed
--> Processing Dependency: libxslt.so.1(LIBXML2_1.0.22)(64bit) for package: postgresql10-contrib-10.6-1PGDG.rhel7.x86_64
--> Processing Dependency: libxslt.so.1(LIBXML2_1.0.18)(64bit) for package: postgresql10-contrib-10.6-1PGDG.rhel7.x86_64
--> Processing Dependency: libxslt.so.1(LIBXML2_1.0.11)(64bit) for package: postgresql10-contrib-10.6-1PGDG.rhel7.x86_64
--> Processing Dependency: libxslt.so.1()(64bit) for package: postgresql10-contrib-10.6-1PGDG.rhel7.x86_64
--> Processing Dependency: libperl.so()(64bit) for package: postgresql10-contrib-10.6-1PGDG.rhel7.x86_64
---> Package postgresql10-libs.x86_64 0:10.6-1PGDG.rhel7 will be installed
---> Package postgresql10-plperl.x86_64 0:10.6-1PGDG.rhel7 will be installed
--> Processing Dependency: perl(:MODULE_COMPAT_5.16.3) for package: postgresql10-plperl-10.6-1PGDG.rhel7.x86_64
---> Package postgresql10-plpython.x86_64 0:10.6-1PGDG.rhel7 will be installed
---> Package postgresql10-pltcl.x86_64 0:10.6-1PGDG.rhel7 will be installed
--> Processing Dependency: tcl for package: postgresql10-pltcl-10.6-1PGDG.rhel7.x86_64
--> Processing Dependency: libtcl8.5.so()(64bit) for package: postgresql10-pltcl-10.6-1PGDG.rhel7.x86_64
---> Package postgresql10-server.x86_64 0:10.6-1PGDG.rhel7 will be installed
--> Running transaction check
---> Package libicu.x86_64 0:50.1.2-15.el7 will be installed
---> Package libxslt.x86_64 0:1.1.28-5.el7 will be installed
---> Package perl.x86_64 4:5.16.3-292.el7 will be installed
--> Processing Dependency: perl(Socket) >= 1.3 for package: 4:perl-5.16.3-292.el7.x86_64
--> Processing Dependency: perl(Scalar::Util) >= 1.10 for package: 4:perl-5.16.3-292.el7.x86_64
--> Processing Dependency: perl-macros for package: 4:perl-5.16.3-292.el7.x86_64
--> Processing Dependency: perl(threads::shared) for package: 4:perl-5.16.3-292.el7.x86_64
--> Processing Dependency: perl(threads) for package: 4:perl-5.16.3-292.el7.x86_64
--> Processing Dependency: perl(constant) for package: 4:perl-5.16.3-292.el7.x86_64
--> Processing Dependency: perl(Time::Local) for package: 4:perl-5.16.3-292.el7.x86_64
--> Processing Dependency: perl(Time::HiRes) for package: 4:perl-5.16.3-292.el7.x86_64
--> Processing Dependency: perl(Storable) for package: 4:perl-5.16.3-292.el7.x86_64
--> Processing Dependency: perl(Socket) for package: 4:perl-5.16.3-292.el7.x86_64
--> Processing Dependency: perl(Scalar::Util) for package: 4:perl-5.16.3-292.el7.x86_64
--> Processing Dependency: perl(Pod::Simple::XHTML) for package: 4:perl-5.16.3-292.el7.x86_64
--> Processing Dependency: perl(Pod::Simple::Search) for package: 4:perl-5.16.3-292.el7.x86_64
--> Processing Dependency: perl(Getopt::Long) for package: 4:perl-5.16.3-292.el7.x86_64
--> Processing Dependency: perl(Filter::Util::Call) for package: 4:perl-5.16.3-292.el7.x86_64
--> Processing Dependency: perl(File::Temp) for package: 4:perl-5.16.3-292.el7.x86_64
--> Processing Dependency: perl(File::Spec::Unix) for package: 4:perl-5.16.3-292.el7.x86_64
--> Processing Dependency: perl(File::Spec::Functions) for package: 4:perl-5.16.3-292.el7.x86_64
--> Processing Dependency: perl(File::Spec) for package: 4:perl-5.16.3-292.el7.x86_64
--> Processing Dependency: perl(File::Path) for package: 4:perl-5.16.3-292.el7.x86_64
--> Processing Dependency: perl(Exporter) for package: 4:perl-5.16.3-292.el7.x86_64
--> Processing Dependency: perl(Cwd) for package: 4:perl-5.16.3-292.el7.x86_64
--> Processing Dependency: perl(Carp) for package: 4:perl-5.16.3-292.el7.x86_64
---> Package perl-libs.x86_64 4:5.16.3-292.el7 will be installed
---> Package tcl.x86_64 1:8.5.13-8.el7 will be installed
--> Running transaction check
---> Package perl-Carp.noarch 0:1.26-244.el7 will be installed
---> Package perl-Exporter.noarch 0:5.68-3.el7 will be installed
---> Package perl-File-Path.noarch 0:2.09-2.el7 will be installed
---> Package perl-File-Temp.noarch 0:0.23.01-3.el7 will be installed
---> Package perl-Filter.x86_64 0:1.49-3.el7 will be installed
---> Package perl-Getopt-Long.noarch 0:2.40-3.el7 will be installed
--> Processing Dependency: perl(Pod::Usage) >= 1.14 for package: perl-Getopt-Long-2.40-3.el7.noarch
--> Processing Dependency: perl(Text::ParseWords) for package: perl-Getopt-Long-2.40-3.el7.noarch
---> Package perl-PathTools.x86_64 0:3.40-5.el7 will be installed
---> Package perl-Pod-Simple.noarch 1:3.28-4.el7 will be installed
--> Processing Dependency: perl(Pod::Escapes) >= 1.04 for package: 1:perl-Pod-Simple-3.28-4.el7.noarch
--> Processing Dependency: perl(Encode) for package: 1:perl-Pod-Simple-3.28-4.el7.noarch
---> Package perl-Scalar-List-Utils.x86_64 0:1.27-248.el7 will be installed
---> Package perl-Socket.x86_64 0:2.010-4.el7 will be installed
---> Package perl-Storable.x86_64 0:2.45-3.el7 will be installed
---> Package perl-Time-HiRes.x86_64 4:1.9725-3.el7 will be installed
---> Package perl-Time-Local.noarch 0:1.2300-2.el7 will be installed
---> Package perl-constant.noarch 0:1.27-2.el7 will be installed
---> Package perl-macros.x86_64 4:5.16.3-292.el7 will be installed
---> Package perl-threads.x86_64 0:1.87-4.el7 will be installed
---> Package perl-threads-shared.x86_64 0:1.43-6.el7 will be installed
--> Running transaction check
---> Package perl-Encode.x86_64 0:2.51-7.el7 will be installed
---> Package perl-Pod-Escapes.noarch 1:1.04-292.el7 will be installed
---> Package perl-Pod-Usage.noarch 0:1.63-3.el7 will be installed
--> Processing Dependency: perl(Pod::Text) >= 3.15 for package: perl-Pod-Usage-1.63-3.el7.noarch
--> Processing Dependency: perl-Pod-Perldoc for package: perl-Pod-Usage-1.63-3.el7.noarch
---> Package perl-Text-ParseWords.noarch 0:3.29-4.el7 will be installed
--> Running transaction check
---> Package perl-Pod-Perldoc.noarch 0:3.20-4.el7 will be installed
--> Processing Dependency: perl(parent) for package: perl-Pod-Perldoc-3.20-4.el7.noarch
--> Processing Dependency: perl(HTTP::Tiny) for package: perl-Pod-Perldoc-3.20-4.el7.noarch
---> Package perl-podlators.noarch 0:2.5.1-3.el7 will be installed
--> Running transaction check
---> Package perl-HTTP-Tiny.noarch 0:0.033-3.el7 will be installed
---> Package perl-parent.noarch 1:0.225-244.el7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

===========================================================================================
 Package                       Arch          Version                   Repository     Size
===========================================================================================
Installing:
 postgresql10                  x86_64        10.6-1PGDG.rhel7          pgdg10        1.6 M
 postgresql10-contrib          x86_64        10.6-1PGDG.rhel7          pgdg10        590 k
 postgresql10-libs             x86_64        10.6-1PGDG.rhel7          pgdg10        354 k
 postgresql10-plperl           x86_64        10.6-1PGDG.rhel7          pgdg10         58 k
 postgresql10-plpython         x86_64        10.6-1PGDG.rhel7          pgdg10         81 k
 postgresql10-pltcl            x86_64        10.6-1PGDG.rhel7          pgdg10         37 k
 postgresql10-server           x86_64        10.6-1PGDG.rhel7          pgdg10        4.6 M
Installing for dependencies:
 libicu                        x86_64        50.1.2-15.el7             base          6.9 M
 libxslt                       x86_64        1.1.28-5.el7              base          242 k
 perl                          x86_64        4:5.16.3-292.el7          base          8.0 M
 perl-Carp                     noarch        1.26-244.el7              base           19 k
 perl-Encode                   x86_64        2.51-7.el7                base          1.5 M
 perl-Exporter                 noarch        5.68-3.el7                base           28 k
 perl-File-Path                noarch        2.09-2.el7                base           26 k
 perl-File-Temp                noarch        0.23.01-3.el7             base           56 k
 perl-Filter                   x86_64        1.49-3.el7                base           76 k
 perl-Getopt-Long              noarch        2.40-3.el7                base           56 k
 perl-HTTP-Tiny                noarch        0.033-3.el7               base           38 k
 perl-PathTools                x86_64        3.40-5.el7                base           82 k
 perl-Pod-Escapes              noarch        1:1.04-292.el7            base           51 k
 perl-Pod-Perldoc              noarch        3.20-4.el7                base           87 k
 perl-Pod-Simple               noarch        1:3.28-4.el7              base          216 k
 perl-Pod-Usage                noarch        1.63-3.el7                base           27 k
 perl-Scalar-List-Utils        x86_64        1.27-248.el7              base           36 k
 perl-Socket                   x86_64        2.010-4.el7               base           49 k
 perl-Storable                 x86_64        2.45-3.el7                base           77 k
 perl-Text-ParseWords          noarch        3.29-4.el7                base           14 k
 perl-Time-HiRes               x86_64        4:1.9725-3.el7            base           45 k
 perl-Time-Local               noarch        1.2300-2.el7              base           24 k
 perl-constant                 noarch        1.27-2.el7                base           19 k
 perl-libs                     x86_64        4:5.16.3-292.el7          base          688 k
 perl-macros                   x86_64        4:5.16.3-292.el7          base           43 k
 perl-parent                   noarch        1:0.225-244.el7           base           12 k
 perl-podlators                noarch        2.5.1-3.el7               base          112 k
 perl-threads                  x86_64        1.87-4.el7                base           49 k
 perl-threads-shared           x86_64        1.43-6.el7                base           39 k
 tcl                           x86_64        1:8.5.13-8.el7            base          1.9 M

Transaction Summary
===========================================================================================
Install  7 Packages (+30 Dependent packages)

Total download size: 28 M
Installed size: 95 M
Is this ok [y/d/N]: y
Downloading packages:
(1/37): perl-Carp-1.26-244.el7.noarch.rpm                           |  19 kB  00:00:00     
(2/37): libxslt-1.1.28-5.el7.x86_64.rpm                             | 242 kB  00:00:00     
(3/37): perl-Exporter-5.68-3.el7.noarch.rpm                         |  28 kB  00:00:00     
(4/37): perl-File-Temp-0.23.01-3.el7.noarch.rpm                     |  56 kB  00:00:00     
(5/37): perl-Filter-1.49-3.el7.x86_64.rpm                           |  76 kB  00:00:00     
(6/37): perl-Getopt-Long-2.40-3.el7.noarch.rpm                      |  56 kB  00:00:00     
(7/37): perl-Encode-2.51-7.el7.x86_64.rpm                           | 1.5 MB  00:00:01     
(8/37): perl-HTTP-Tiny-0.033-3.el7.noarch.rpm                       |  38 kB  00:00:00     
(9/37): perl-PathTools-3.40-5.el7.x86_64.rpm                        |  82 kB  00:00:00     
(10/37): perl-Pod-Escapes-1.04-292.el7.noarch.rpm                   |  51 kB  00:00:00     
(11/37): perl-Pod-Simple-3.28-4.el7.noarch.rpm                      | 216 kB  00:00:00     
(12/37): perl-Pod-Usage-1.63-3.el7.noarch.rpm                       |  27 kB  00:00:00     
(13/37): perl-Scalar-List-Utils-1.27-248.el7.x86_64.rpm             |  36 kB  00:00:00     
(14/37): perl-5.16.3-292.el7.x86_64.rpm                             | 8.0 MB  00:00:02     
(15/37): perl-Storable-2.45-3.el7.x86_64.rpm                        |  77 kB  00:00:00     
(16/37): perl-Socket-2.010-4.el7.x86_64.rpm                         |  49 kB  00:00:00     
(17/37): perl-Pod-Perldoc-3.20-4.el7.noarch.rpm                     |  87 kB  00:00:00     
(18/37): perl-Text-ParseWords-3.29-4.el7.noarch.rpm                 |  14 kB  00:00:00     
(19/37): perl-Time-Local-1.2300-2.el7.noarch.rpm                    |  24 kB  00:00:00     
(20/37): perl-constant-1.27-2.el7.noarch.rpm                        |  19 kB  00:00:00     
(21/37): perl-libs-5.16.3-292.el7.x86_64.rpm                        | 688 kB  00:00:00     
(22/37): perl-macros-5.16.3-292.el7.x86_64.rpm                      |  43 kB  00:00:00     
(23/37): perl-Time-HiRes-1.9725-3.el7.x86_64.rpm                    |  45 kB  00:00:00     
(24/37): perl-parent-0.225-244.el7.noarch.rpm                       |  12 kB  00:00:00     
(25/37): perl-threads-1.87-4.el7.x86_64.rpm                         |  49 kB  00:00:00     
(26/37): perl-threads-shared-1.43-6.el7.x86_64.rpm                  |  39 kB  00:00:00     
(27/37): perl-podlators-2.5.1-3.el7.noarch.rpm                      | 112 kB  00:00:00     
(28/37): libicu-50.1.2-15.el7.x86_64.rpm                            | 6.9 MB  00:00:03     
(29/37): postgresql10-contrib-10.6-1PGDG.rhel7.x86_64.rpm           | 590 kB  00:00:03     
(30/37): postgresql10-libs-10.6-1PGDG.rhel7.x86_64.rpm              | 354 kB  00:00:01     
(31/37): postgresql10-plperl-10.6-1PGDG.rhel7.x86_64.rpm            |  58 kB  00:00:00     
(32/37): postgresql10-10.6-1PGDG.rhel7.x86_64.rpm                   | 1.6 MB  00:00:05     
(33/37): postgresql10-plpython-10.6-1PGDG.rhel7.x86_64.rpm          |  81 kB  00:00:00     
(34/37): postgresql10-pltcl-10.6-1PGDG.rhel7.x86_64.rpm             |  37 kB  00:00:00     
(35/37): tcl-8.5.13-8.el7.x86_64.rpm                                | 1.9 MB  00:00:00     
(36/37): postgresql10-server-10.6-1PGDG.rhel7.x86_64.rpm            | 4.6 MB  00:00:06     
perl-File-Path-2.09-2.el7.noar FAILED                                          
http://mirrors.njupt.edu.cn/centos/7.5.1804/os/x86_64/Packages/perl-File-Path-2.09-2.el7.noarch.rpm: [Errno 12] Timeout on http://10.10.254.10/cache/4/01/mirrors.njupt.edu.cn/7b74215f0436e2c79988e442a0d2acf8/perl-File-Path-2.09-2.el7.noarch.rpm: (28, 'Connection timed out after 30947 milliseconds')
Trying other mirror.
(37/37): perl-File-Path-2.09-2.el7.noarch.rpm                       |  26 kB  00:00:00     
-------------------------------------------------------------------------------------------
Total                                                      870 kB/s |  28 MB  00:00:32     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : postgresql10-libs-10.6-1PGDG.rhel7.x86_64                              1/37 
  Installing : libicu-50.1.2-15.el7.x86_64                                            2/37 
  Installing : postgresql10-10.6-1PGDG.rhel7.x86_64                                   3/37 
  Installing : postgresql10-server-10.6-1PGDG.rhel7.x86_64                            4/37 
  Installing : 1:perl-parent-0.225-244.el7.noarch                                     5/37 
  Installing : perl-HTTP-Tiny-0.033-3.el7.noarch                                      6/37 
  Installing : perl-podlators-2.5.1-3.el7.noarch                                      7/37 
  Installing : perl-Pod-Perldoc-3.20-4.el7.noarch                                     8/37 
  Installing : 1:perl-Pod-Escapes-1.04-292.el7.noarch                                 9/37 
  Installing : perl-Text-ParseWords-3.29-4.el7.noarch                                10/37 
  Installing : perl-Encode-2.51-7.el7.x86_64                                         11/37 
  Installing : perl-Pod-Usage-1.63-3.el7.noarch                                      12/37 
  Installing : 4:perl-macros-5.16.3-292.el7.x86_64                                   13/37 
  Installing : 4:perl-libs-5.16.3-292.el7.x86_64                                     14/37 
  Installing : perl-Storable-2.45-3.el7.x86_64                                       15/37 
  Installing : perl-Exporter-5.68-3.el7.noarch                                       16/37 
  Installing : perl-constant-1.27-2.el7.noarch                                       17/37 
  Installing : perl-Time-Local-1.2300-2.el7.noarch                                   18/37 
  Installing : perl-Socket-2.010-4.el7.x86_64                                        19/37 
  Installing : perl-Carp-1.26-244.el7.noarch                                         20/37 
  Installing : 4:perl-Time-HiRes-1.9725-3.el7.x86_64                                 21/37 
  Installing : perl-PathTools-3.40-5.el7.x86_64                                      22/37 
  Installing : perl-Scalar-List-Utils-1.27-248.el7.x86_64                            23/37 
  Installing : perl-File-Temp-0.23.01-3.el7.noarch                                   24/37 
  Installing : perl-File-Path-2.09-2.el7.noarch                                      25/37 
  Installing : perl-threads-shared-1.43-6.el7.x86_64                                 26/37 
  Installing : perl-threads-1.87-4.el7.x86_64                                        27/37 
  Installing : perl-Filter-1.49-3.el7.x86_64                                         28/37 
  Installing : 1:perl-Pod-Simple-3.28-4.el7.noarch                                   29/37 
  Installing : perl-Getopt-Long-2.40-3.el7.noarch                                    30/37 
  Installing : 4:perl-5.16.3-292.el7.x86_64                                          31/37 
  Installing : libxslt-1.1.28-5.el7.x86_64                                           32/37 
  Installing : 1:tcl-8.5.13-8.el7.x86_64                                             33/37 
  Installing : postgresql10-pltcl-10.6-1PGDG.rhel7.x86_64                            34/37 
  Installing : postgresql10-contrib-10.6-1PGDG.rhel7.x86_64                          35/37 
  Installing : postgresql10-plperl-10.6-1PGDG.rhel7.x86_64                           36/37 
  Installing : postgresql10-plpython-10.6-1PGDG.rhel7.x86_64                         37/37 
  Verifying  : perl-HTTP-Tiny-0.033-3.el7.noarch                                      1/37 
  Verifying  : 1:tcl-8.5.13-8.el7.x86_64                                              2/37 
  Verifying  : perl-threads-shared-1.43-6.el7.x86_64                                  3/37 
  Verifying  : perl-Storable-2.45-3.el7.x86_64                                        4/37 
  Verifying  : perl-Exporter-5.68-3.el7.noarch                                        5/37 
  Verifying  : perl-constant-1.27-2.el7.noarch                                        6/37 
  Verifying  : perl-PathTools-3.40-5.el7.x86_64                                       7/37 
  Verifying  : 4:perl-macros-5.16.3-292.el7.x86_64                                    8/37 
  Verifying  : 1:perl-parent-0.225-244.el7.noarch                                     9/37 
  Verifying  : 4:perl-5.16.3-292.el7.x86_64                                          10/37 
  Verifying  : postgresql10-libs-10.6-1PGDG.rhel7.x86_64                             11/37 
  Verifying  : perl-File-Temp-0.23.01-3.el7.noarch                                   12/37 
  Verifying  : 1:perl-Pod-Simple-3.28-4.el7.noarch                                   13/37 
  Verifying  : perl-Getopt-Long-2.40-3.el7.noarch                                    14/37 
  Verifying  : perl-Time-Local-1.2300-2.el7.noarch                                   15/37 
  Verifying  : 4:perl-libs-5.16.3-292.el7.x86_64                                     16/37 
  Verifying  : perl-Socket-2.010-4.el7.x86_64                                        17/37 
  Verifying  : perl-Carp-1.26-244.el7.noarch                                         18/37 
  Verifying  : postgresql10-contrib-10.6-1PGDG.rhel7.x86_64                          19/37 
  Verifying  : libxslt-1.1.28-5.el7.x86_64                                           20/37 
  Verifying  : 4:perl-Time-HiRes-1.9725-3.el7.x86_64                                 21/37 
  Verifying  : postgresql10-plperl-10.6-1PGDG.rhel7.x86_64                           22/37 
  Verifying  : perl-Scalar-List-Utils-1.27-248.el7.x86_64                            23/37 
  Verifying  : 1:perl-Pod-Escapes-1.04-292.el7.noarch                                24/37 
  Verifying  : postgresql10-plpython-10.6-1PGDG.rhel7.x86_64                         25/37 
  Verifying  : perl-Pod-Usage-1.63-3.el7.noarch                                      26/37 
  Verifying  : postgresql10-pltcl-10.6-1PGDG.rhel7.x86_64                            27/37 
  Verifying  : perl-Encode-2.51-7.el7.x86_64                                         28/37 
  Verifying  : perl-Pod-Perldoc-3.20-4.el7.noarch                                    29/37 
  Verifying  : perl-podlators-2.5.1-3.el7.noarch                                     30/37 
  Verifying  : perl-File-Path-2.09-2.el7.noarch                                      31/37 
  Verifying  : libicu-50.1.2-15.el7.x86_64                                           32/37 
  Verifying  : perl-threads-1.87-4.el7.x86_64                                        33/37 
  Verifying  : perl-Filter-1.49-3.el7.x86_64                                         34/37 
  Verifying  : postgresql10-10.6-1PGDG.rhel7.x86_64                                  35/37 
  Verifying  : perl-Text-ParseWords-3.29-4.el7.noarch                                36/37 
  Verifying  : postgresql10-server-10.6-1PGDG.rhel7.x86_64                           37/37 

Installed:
  postgresql10.x86_64 0:10.6-1PGDG.rhel7                                                   
  postgresql10-contrib.x86_64 0:10.6-1PGDG.rhel7                                           
  postgresql10-libs.x86_64 0:10.6-1PGDG.rhel7                                              
  postgresql10-plperl.x86_64 0:10.6-1PGDG.rhel7                                            
  postgresql10-plpython.x86_64 0:10.6-1PGDG.rhel7                                          
  postgresql10-pltcl.x86_64 0:10.6-1PGDG.rhel7                                             
  postgresql10-server.x86_64 0:10.6-1PGDG.rhel7                                            

Dependency Installed:
  libicu.x86_64 0:50.1.2-15.el7                  libxslt.x86_64 0:1.1.28-5.el7             
  perl.x86_64 4:5.16.3-292.el7                   perl-Carp.noarch 0:1.26-244.el7           
  perl-Encode.x86_64 0:2.51-7.el7                perl-Exporter.noarch 0:5.68-3.el7         
  perl-File-Path.noarch 0:2.09-2.el7             perl-File-Temp.noarch 0:0.23.01-3.el7     
  perl-Filter.x86_64 0:1.49-3.el7                perl-Getopt-Long.noarch 0:2.40-3.el7      
  perl-HTTP-Tiny.noarch 0:0.033-3.el7            perl-PathTools.x86_64 0:3.40-5.el7        
  perl-Pod-Escapes.noarch 1:1.04-292.el7         perl-Pod-Perldoc.noarch 0:3.20-4.el7      
  perl-Pod-Simple.noarch 1:3.28-4.el7            perl-Pod-Usage.noarch 0:1.63-3.el7        
  perl-Scalar-List-Utils.x86_64 0:1.27-248.el7   perl-Socket.x86_64 0:2.010-4.el7          
  perl-Storable.x86_64 0:2.45-3.el7              perl-Text-ParseWords.noarch 0:3.29-4.el7  
  perl-Time-HiRes.x86_64 4:1.9725-3.el7          perl-Time-Local.noarch 0:1.2300-2.el7     
  perl-constant.noarch 0:1.27-2.el7              perl-libs.x86_64 4:5.16.3-292.el7         
  perl-macros.x86_64 4:5.16.3-292.el7            perl-parent.noarch 1:0.225-244.el7        
  perl-podlators.noarch 0:2.5.1-3.el7            perl-threads.x86_64 0:1.87-4.el7          
  perl-threads-shared.x86_64 0:1.43-6.el7        tcl.x86_64 1:8.5.13-8.el7                 

Complete!

三、初始化数据库

数据目录在 /data/pg10data

方法一:使用postgresql-10-setup 初始化数据库

postgresql-10-setup 自动创建
用户组:postgres
用户:postgres

mkdir /data/pg10data  
chmod 700 /data/pg10data
chown postgres:postgres /data/pg10data
vi /usr/lib/systemd/system/postgresql-10.service
把Environment=PGDATA=/var/lib/pgsql/10/data/修改为Environment=PGDATA=/data/pg10data/

/usr/pgsql-10/bin/postgresql-10-setup initdb   #初始化
systemctl enable postgresql-10                 #设置开机启动    
systemctl start postgresql-10                  #启动postgresql服务 

# centos6 的开机启动
chkconfig postgresql-10 on   #设置开机启动    
service postgresql-10 start #启动postgresql服务 

方法二:使用 initdb 初始化数据库

数据目录在 /data/pg10data

#新增postgres用户组:
groupadd postgres

#新增postgres用户并且设置这个用户属于上面创建的postgres用户组:
useradd -g postgres postgres

#修改postgres用户密码:passwd postgres(这里设置密码为postgres)
passwd postgres  --修改postgres用户密码

mkdir /data/pg10data  
chmod 700 /data/pg10data
chown postgres:postgres /data/pg10data

su - postgres
#初始化数据库
$/usr/pgsql-10/bin/initdb --encoding=UTF-8 --local=zh_CN.UTF8 --pgdata=/data/pg10data/
启动
$/usr/pgsql-10/bin/pg_ctl -D /data/pg10data/ -l /data/pg10data/log/db.log start
停止
$/usr/pgsql-10/bin/pg_ctl -D /data/pg10data/ -l /data/pg10data/log/db.log stop
#写入系统启动项
$echo "su - postgres -c '/usr/pgsql-10/bin/pg_ctl -D /data/pg10data/ -l /data/pg10data/log/db.log start'" >> /etc/rc.d/rc.local
$chmod +x /etc/rc.d/rc.local 

登录postgresql并设置密码

设置用户 postgres 密码 postgres

su - postgres
psql
ALTER USER postgres WITH PASSWORD 'postgres';

数据库登录权限设置

开启远程访问

vi /data/pg10data/postgresql.conf 
修改#listen_addresses = ‘localhost’ 为 listen_addresses=’*’ 
当然,此处‘*’也可以改为任何你想开放的服务器IP

如有需要修改端口

vi/data/pg10data/postgresql.conf 
修改#port =5432 为 port =端口

《centos7 在线安装新版postgresql10》 image.png

信任远程连接

vi /data/pg10data/pg_hba.conf 
修改如下内容,信任指定服务器连接 
# IPv4 local connections: 
host    all             all             127.0.0.1/32            trust
host    all             all             0.0.0.0/0            password

《centos7 在线安装新版postgresql10》 image.png

打开防火墙

CentOS 防火墙中内置了PostgreSQL服务,配置文件位置在/usr/lib/firewalld/services/postgresql.xml,我们只需以服务方式将PostgreSQL服务开放即可。

 #开机启用防火墙
systemctl enable firewalld

 #开启防火墙
systemctl start firewalld

#开放postgresql服务
firewall-cmd --add-service=postgresql --permanent 

#或者可以直接添加端口
firewall-cmd --zone=public --add-port=5432/tcp --permanent 

#重载防火墙
firewall-cmd --reload  

#查看占用端口
firewall-cmd --list-ports 

测试使用

因为postgres属于superuser,我们需要创建部分低权限用户

创建数据库

CREATE DATABASE testdb;
创建用户

CREATE USER testuser CREATEDB LOGIN PASSWORD ‘testpassword’;
将testdb所有权限赋给用户testuser

GRANT ALL ON DATABASE testdb TO testuser;

删除数据库

drop database testdb;

删除用户

drop role testuser;
    原文作者:hemny
    原文地址: https://www.jianshu.com/p/4e88071ed09a
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞