在CentOS 7上安装&配置PostgreSQL 12

摘要:
一、前言1、本文主要内容PostgreSQL12安装(yum)PostgreSQL12基础配置PostgreSQL12远程访问配置PostgreSQL基础管理2、本文环境信息与适用范围环境信息软件版本CentOS7.6ReleasePostgreSQL12.x适用范围软件版本CentOSCentOS7.xPostgreSQL9.x-12.x二、PostgreSQL安装1、导入yum源sudoyum

一、前言

1、本文主要内容

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

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

  • 环境信息
软件版本
CentOS7.6 Release
PostgreSQL12.x
  • 适用范围
软件版本
CentOSCentOS 7.x
PostgreSQL9.x-12.x

二、PostgreSQL安装

1、导入yum源

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

1、安装PostgreSQL服务

sudo yum install -y postgresql12 postgresql12-server

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

2、初始化数据库

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

#Initializing database ... OK

3、启动PostgreSQL服务

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

#设置PostgreSQL服务为开机启动
sudo systemctl enable postgresql-12

9.x版本的服务名是postgresql-9.x

二、修改postgres账号密码

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

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

为了方便我们使用postgres账号进行管理,我们可以修改该账号的密码

1、进入PostgreSQL命令行

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

su postgres

2、启动SQL Shell

psql

3、修改密码

ALTER USER postgres WITH PASSWORD 'NewPassword';

三、配置远程访问

1、开放端口

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

2、修改IP绑定

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

#将监听地址修改为*
#默认listen_addresses配置是注释掉的,所以可以直接在配置文件开头加入该行
listen_addresses='*'

3、允许所有IP访问

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

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

4、重启PostgreSQL服务

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

配置完成后即可使用客户端进行连接

四、PostgreSQL shell常用语法示例

启动SQL shell:

su postgres
psql

1、数据库相关语法示例

#创建数据库
CREATE DATABASE mydb;

#查看所有数据库
l

#切换当前数据库
c mydb

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

#查看当前数据库下所有表
d

2、用户与访问授权语法示例

#新建用户
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

五、备注

1、相关阅读

免责声明:文章转载自《在CentOS 7上安装&配置PostgreSQL 12》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇AWVS13破解与安装_Ubuntu计划情人节浪漫之旅下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

七周七数据库

北京--西三旗,雨天。。。在周末休息之余也不要忘记学习呀,嘻嘻~ 冲冲冲 --关系数据库-- 关系数据库管理系统是以集合理论为基础的系统,,实现为具有行和列的二维表。与RDBMS交互的标准方法,是用结构化查询语句编写查询,数据值具有类型,可以是数字、字符串/日期/未解释的二进制大对象,或其他类型。系统强制使用类型。重要的是,表可以联接并转化为新的、更复杂的...

PostgreSQL内存占用

PostgreSQL relcache在长连接应用中的内存霸占"坑" 背景阿里巴巴内部的某业务在使用阿里云RDS PG时,业务线细心的DBA发现,一些长连接占据了大量的内存没有释放。后来找到了复现的方法。使用场景有些极端。 有阿里巴巴内部业务这样的老湿机陪伴的RDS PG,是很靠谱的。 PostgreSQL 缓存除了常见的执行计划缓存、数据缓存,Postg...

LOG EXPLORER FOR SQL SERVER 使用

引用:https://www.cnblogs.com/whitney/archive/2008/08/22/1273879.html 软件下载:https://pan.baidu.com/s/1KnwGfzSgce-oDAj3miGSNg 本次的使用的VER:4.2 Demo; 数据库:SQL2005;目的:恢复被删除的数据。所以,只略说了恢复数据的步骤。...

Jetson AGX Xavier/Ubuntu测试SSD的读写速度

我是在Jetson AGX Xavier上测试的,Ubuntu上应该也可以用。 1. 查看SSD df -h /dev/nvme0n1p1是我要测试的硬盘。 2. 读速度 sudo hdparm -tT /dev/nvme0n1p1 -t 执行设备读取的时间 -T 执行缓存读取的时间 多测几次会准一些 for i in 1 2 3; do sudo h...

慢查询日志(mysql)

参考 针对mysql的优化,mysql提供了慢查询日志的支持。mysql的慢查询是mysql提供的一种日志记录,它用来记录mysql中响应时间超过阀值的sql语句,某个sql运行时间如果超过设置的阀值(long_query_time),就会被记录到慢查询日志中。阀值默认值是10s,默认情况下,mysql数据库并不会启动慢查询日志,需要手动来设置这个参数(s...

oracle--DG初始化参数

下列参数为Primary角色相关的初始化参数 DB_NAME 注意保持同一个Data Guard中所有数据库DB_NAME相同 例如:DB_NAME=kingle DB_UNIQUE_NAME 为每一个数据库指定一个唯一的名称,该参数一经指定不会再发生变化,除非DBA主动修改它 例如:DB_UNIQUE_NAME=DavePre LOG_ARC...