在CentOS 7上安装&配置PostgreSQL 12

1、前言

一、本文主要内容

  • PostgreSQL 12 安装(yum)
  • PostgreSQL 12 基础配置
  • PostgreSQL 12 远程访问配置
  • PostgreSQL 基础管理

二、本文环境信息与适用范围

  • 环境信息
软件 版本
CentOS 7.6 Release
PostgreSQL 12.x
  • 适用范围
软件 版本
CentOS CentOS 7.x
PostgreSQL 9.x-12.x

2、PostgreSQL安装

一、导入yum源

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

一、安装PostgreSQL服务

sudo yum install -y postgresql12 postgresql12-server
安装PostgreSQL 11就是 yum install postgresql12 postgresql12-server
安装PostgreSQL 9.5就是 yum install postgresql95 postgresql95-server
依此类推

二、初始化数据库

sudo /usr/pgsql-12/bin/postgresql-12-setup initdb 

#Initializing database ... OK

三、启动PostgreSQL服务

#启动PostgreSQL服务
sudo systemctl start postgresql-12

#设置PostgreSQL服务为开机启动
sudo systemctl enable postgresql-12
9.x版本的服务名是postgresql-9.x

2、修改postgres帐号密码

PostgreSQL安装成功以后,会默认建立一个名为postgres的Linux用户,初始化数据库后,会有名为postgres的数据库,来存储数据库的基础信息,例如用户信息等等,至关于MySQL中默认的名为mysql数据库。html

postgres数据库中会初始化一名超级用户postgresmysql

为了方便咱们使用postgres帐号进行管理,咱们能够修改该帐号的密码linux

一、进入PostgreSQL命令行

经过su命令切换linux用户为postgres会自动进入命令行sql

su postgres

二、启动SQL Shell

psql

三、修改密码

ALTER USER postgres WITH PASSWORD 'NewPassword';

3、配置远程访问

一、开放端口

sudo firewall-cmd --add-port=5432/tcp --permanent
sudo firewall-cmd --reload

二、修改IP绑定

#修改配置文件
vi /var/lib/pgsql/12/data/postgresql.conf

#将监听地址修改成*
#默认listen_addresses配置是注释掉的,因此能够直接在配置文件开头加入该行
listen_addresses='*'

三、容许全部IP访问

#修改配置文件
vi /var/lib/pgsql/12/data/pg_hba.conf

#在问价尾部加入
host  all  all 0.0.0.0/0 md5

四、重启PostgreSQL服务

#重启PostgreSQL服务
sudo systemctl restart postgresql-12

配置完成后便可使用客户端进行链接shell

4、PostgreSQL shell经常使用语法示例

启动SQL shell:数据库

su postgres
psql

一、数据库相关语法示例

#建立数据库
CREATE DATABASE mydb;

#查看全部数据库
\l

#切换当前数据库
\c mydb

#建立表
CREATE TABLE test(id int,body varchar(100));

#查看当前数据库下全部表
\d

二、用户与访问受权语法示例

#新建用户
CREATE USER test WITH PASSWORD 'test';

#赋予指定帐户指定数据库全部权限
GRANT ALL PRIVILEGES ON DATABASE mydb TO test;

#移除指定帐户指定数据库全部权限
REVOKE ALL PRIVILEGES ON DATABASE mydb TO test
权限代码:SELECT、INSERT、UPDATE、DELETE、TRUNCATE、REFERENCES、TRIGGER、CREATE、CONNECT、TEMPORARY、EXECUTE、USAGE

5、备注

一、相关阅读


原文首发于个人我的博客:https://ken.io/note/centos7-p...centos

相关文章
相关标签/搜索