运行环境
系统版本:CentOS Linux release 7.6.1810 (Core)
软件版本:postgresql-12
硬件要求:无
安装过程
1、安装YUM-PostgreSQL存储库
YUM-PostgreSQL存储库由PostgreSQL官方提供。
[root@localhost ~]# yum -y install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
2、安装PostgreSQL12
[root@localhost ~]# yum -y install postgresql12 postgresql12-server
3、初始化数据库
[root@localhost ~]# /usr/pgsql-12/bin/postgresql-12-setup initdb
4、修改配置,监听所有网卡地址
这样其他主机也可以通过主网卡访问到PostgreSQL数据库,默认情况下如果不修改,则PostgreSQL只允许本地访问。
[root@localhost ~]# vi /var/lib/pgsql/12/data/postgresql.conf
listen_addresses = '*'
port = 5432
5、添加信任网段,允许其他主机访问
[root@localhost ~]# vi /var/lib/pgsql/12/data/pg_hba.conf
# 添加以下内容到文件尾部。
# TYPE DATABASE USER ADDRESS METHOD
host all all 0.0.0.0/0 md5
# 身份验证方法(METHOD):
# - md5 密码经过MD5加密后登陆到数据库,一般采用选择这种方式。
# - password 使用明文密码登陆到数据库。
# - trust 信任该主机,无需密码即可登陆到数据库。
# - ident 通过读取"pg_ident.conf"文件里面具有系统用户=数据库用户的映射关系,可以使用系统用户登陆到
# 数据库。
6、启动服务
[root@localhost ~]# systemctl enable postgresql-12
[root@localhost ~]# systemctl start postgresql-12
[root@localhost ~]# systemctl status postgresql-12
● postgresql-12.service - PostgreSQL 12 database server
Loaded: loaded (/usr/lib/systemd/system/postgresql-12.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2020-03-05 08:22:38 EST; 5s ago
Docs: https://www.postgresql.org/docs/12/static/
[root@localhost ~]# netstat -lnupt |grep postmaster
tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN 35219/postmaster
tcp6 0 0 :::5432 :::* LISTEN 35219/postmaster
7、配置环境变量
配置环境变量,使“psql”客户端命令可以再全局使用。
[root@localhost ~]# vi /etc/profile
# PostgreSQL
export POSTGRESQL_BIN="/usr/pgsql-12/bin/"
export PATH=$PATH:$POSTGRESQL_BIN
[root@localhost ~]# source /etc/profile
8、查看数据库版本
切换操作用户“postgres”,“postgres”用户是PostgreSQL的超级用户。
[root@localhost ~]# sudo -i -u postgres
-bash-4.2$ psql
psql (12.2)
Type "help" for help.
postgres=# SELECT version();
version
-------------------------------------------------------------------------------------------------------
PostgreSQL 12.2 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39), 64-bit
(1 row)
9、查看数据库列表
postgres=# select pg_database.datname from pg_database;
datname
-----------
postgres
template1
template0
10、修改"postgres"用户密码
默认情况下"postgres"用户没有密码,我们需要给超级管理员一个密码。
postgres=# \password
Enter new password: XXX
Enter it again: XXX
postgres=# exit
-bash-4.2$ exit
11、使用Windows客户端连接到PostgreSQL数据库
PGAdmin是一个开源的免费PostgreSQL数据库连接工具。
官网:https://www.pgadmin.org/