阿里云服务器 centos 7 安装postgresql 11

Postgresql简介

官方网站:https://www.postgresql.org/

简介参考zhihu文章 https://www.zhihu.com/question/20010554

关于框架+DB的一些性能参考性能测试(仅供参考) http://www.techempower.com/benchmarks/#section=data-r15&hw=ph&test=fortune

一、更新rpm源

1、打开官网https://yum.postgresql.org/repopackages.php

阿里云服务器 centos 7 安装postgresql 11

2、复制上图链接添加rpm源

$ yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm

3、查看可以安装的postgresql版本,此命令会稍微慢一些

$ yum list | grep postgresql

阿里云服务器 centos 7 安装postgresql 11

二、安装postgresql

1、注意下安装版本

yum install postgresql11-contrib postgresql11-server -y

以下是安装日志

Dependencies Resolved

===============================================================================================================
Package Arch Version Repository Size
===============================================================================================================
Installing:
postgresql11-contrib x86_64 11.3-1PGDG.rhel7 pgdg11 616 k
postgresql11-server x86_64 11.3-1PGDG.rhel7 pgdg11 4.7 M
Installing for dependencies:
libicu x86_64 50.1.2-17.el7 base 6.9 M
libxslt x86_64 1.1.28-5.el7 base 242 k
postgresql11 x86_64 11.3-1PGDG.rhel7 pgdg11 1.7 M
postgresql11-libs x86_64 11.3-1PGDG.rhel7 pgdg11 360 k Transaction Summary
===============================================================================================================
Install 2 Packages (+4 Dependent packages) Total download size: 14 M
Installed size: 55 M
Downloading packages:
(1/6): libxslt-1.1.28-5.el7.x86_64.rpm | 242 kB 00:00:00
(2/6): libicu-50.1.2-17.el7.x86_64.rpm | 6.9 MB 00:00:00
warning: /var/cache/yum/x86_64/7/pgdg11/packages/postgresql11-contrib-11.3-1PGDG.rhel7.x86_64.rpm: Header V4 DSA/SHA1 Signature, key ID 442df0f8: NOKEY
Public key for postgresql11-contrib-11.3-1PGDG.rhel7.x86_64.rpm is not installed
(3/6): postgresql11-contrib-11.3-1PGDG.rhel7.x86_64.rpm | 616 kB 00:01:03
(4/6): postgresql11-libs-11.3-1PGDG.rhel7.x86_64.rpm | 360 kB 00:00:55
postgresql11-server-11.3-1PGDG FAILED 2.6 kB/s | 9.4 MB 00:32:32 ETA
https://download.postgresql.org/pub/repos/yum/11/redhat/rhel-7-x86_64/postgresql11-server-11.3-1PGDG.rhel7.x86_64.rpm: [Errno 12] Timeout on https://download.postgresql.org/pub/repos/yum/11/redhat/rhel-7-x86_64/postgresql11-server-11.3-1PGDG.rhel7.x86_64.rpm: (28, 'Operation too slow. Less than 1000 bytes/sec transferred the last 30 seconds')
Trying other mirror.
(5/6): postgresql11-11.3-1PGDG.rhel7.x86_64.rpm | 1.7 MB 00:06:11
(6/6): postgresql11-server-11.3-1PGDG.rhel7.x86_64.rpm | 4.7 MB 00:06:45
---------------------------------------------------------------------------------------------------------------
Total 19 kB/s | 14 MB 00:12:57
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG
Importing GPG key 0x442DF0F8:
Userid : "PostgreSQL RPM Building Project <pgsqlrpms-hackers@pgfoundry.org>"
Fingerprint: 68c9 e2b9 1a37 d136 fe74 d176 1f16 d2e1 442d f0f8
Package : pgdg-redhat-repo-42.0-4.noarch (installed)
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : postgresql11-libs-11.3-1PGDG.rhel7.x86_64 1/6
Installing : libicu-50.1.2-17.el7.x86_64 2/6
Installing : postgresql11-11.3-1PGDG.rhel7.x86_64 3/6
Installing : libxslt-1.1.28-5.el7.x86_64 4/6
Installing : postgresql11-contrib-11.3-1PGDG.rhel7.x86_64 5/6
Installing : postgresql11-server-11.3-1PGDG.rhel7.x86_64 6/6
Verifying : postgresql11-11.3-1PGDG.rhel7.x86_64 1/6
Verifying : postgresql11-server-11.3-1PGDG.rhel7.x86_64 2/6
Verifying : libicu-50.1.2-17.el7.x86_64 3/6
Verifying : libxslt-1.1.28-5.el7.x86_64 4/6
Verifying : postgresql11-libs-11.3-1PGDG.rhel7.x86_64 5/6
Verifying : postgresql11-contrib-11.3-1PGDG.rhel7.x86_64 6/6 Installed:
postgresql11-contrib.x86_64 0:11.3-1PGDG.rhel7 postgresql11-server.x86_64 0:11.3-1PGDG.rhel7 Dependency Installed:
libicu.x86_64 0:50.1.2-17.el7 libxslt.x86_64 0:1.1.28-5.el7
postgresql11.x86_64 0:11.3-1PGDG.rhel7 postgresql11-libs.x86_64 0:11.3-1PGDG.rhel7 Complete!

查看是否安装成功

rpm -aq| grep postgres

阿里云服务器 centos 7 安装postgresql 11

安装成功后Postgresql安装目录是/usr/pgsql-11 文件目录是 /var/lib/pgsql/11/data 如图:

阿里云服务器 centos 7 安装postgresql 11

2、初始化数据库

$ /usr/pgsql-11/bin/postgresql-11-setup initdb

阿里云服务器 centos 7 安装postgresql 11

3、设置自动启动,并查看启动状态

$ systemctl enable postgresql-11
$ systemctl start postgresql-11
$ systemctl status postgresql-11

阿里云服务器 centos 7 安装postgresql 11

三、配置postgresql

1、登录postgresql并设置密码

su - postgres

进入数据库

psql

更改密码

ALTER USER postgres WITH PASSWORD 'postgres'

退出,并并切换回root账户,重新输入密码即可

\q
su root

阿里云服务器 centos 7 安装postgresql 11

2、修改访问策略,默认是不允许远程登录

搜索pg_hba.conf文件

find / -name pg_hba.conf

复制文件路径修改pg_hba.conf

vim /var/lib/pgsql/11/data/pg_hba.conf

ADDRESS:修改为samenet(匹配服务器所在子网中的任何地址) 或 0.0.0.0/0 (任意IP地址) 或 指定的IP地址

METHOD:修改为trust (可信任)

阿里云服务器 centos 7 安装postgresql 11

3、修改远程访问IP

搜索postgresql.conf文件

find / -name postgresql.conf

复制文件路径用vim修改,取消listen_addresses前面的#注释,并修改地址为* (所有IP) 或者线上外网IP地址,如图

线上环境#port = 5432最好取消注释,端口一并调整

vim /var/lib/pgsql/11/data/postgresql.conf

阿里云服务器 centos 7 安装postgresql 11

4、重启postgresql-11

systemctl restart postgresql-11

四、连接postgresql

1、如果是阿里云服务器记得打开对应的端口,否则无法连接,如果是虚拟机测试环境可忽略

阿里云服务器 centos 7 安装postgresql 11

阿里云服务器 centos 7 安装postgresql 11

2、注意检查下防火墙是否开启&端口是否打开,也会影响远程连接

firewall-cmd --permanent --add-port=5432/tcp
systemctl restart firewalld

3、连接测试

navicat 官网自行下载https://www.navicat.com.cn/

阿里云服务器 centos 7 安装postgresql 11

pgadmin 官网自行下载https://www.pgadmin.org/download/

阿里云服务器 centos 7 安装postgresql 11

上一篇:注解Annotation


下一篇:第八周上机练习