前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >在CentOS 7上安装&配置PostgreSQL 12

在CentOS 7上安装&配置PostgreSQL 12

作者头像
KenTalk
发布2020-03-02 14:35:40
15.7K1
发布2020-03-02 14:35:40
举报
文章被收录于专栏:Ken的杂谈

一、前言

1、本文主要内容

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

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

  • 环境信息

软件

版本

CentOS

7.6 Release

PostgreSQL

12.x

  • 适用范围

软件

版本

CentOS

CentOS 7.x

PostgreSQL

9.x-12.x

二、PostgreSQL安装

1、导入yum源

代码语言:javascript
复制
sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm

1、安装PostgreSQL服务

代码语言:javascript
复制
sudo yum install -y postgresql12 postgresql12-server

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

2、初始化数据库

代码语言:javascript
复制
sudo /usr/pgsql-12/bin/postgresql-12-setup initdb 

#Initializing database ... OK

3、启动PostgreSQL服务

代码语言:javascript
复制
#启动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会自动进入命令行

代码语言:javascript
复制
su postgres

2、启动SQL Shell

代码语言:javascript
复制
psql

3、修改密码

代码语言:javascript
复制
ALTER USER postgres WITH PASSWORD 'NewPassword';

三、配置远程访问

1、开放端口

代码语言:javascript
复制
sudo firewall-cmd --add-port=5432/tcp --permanent
sudo firewall-cmd --reload

2、修改IP绑定

代码语言:javascript
复制
#修改配置文件
vi /var/lib/pgsql/12/data/postgresql.conf

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

3、允许所有IP访问

代码语言:javascript
复制
#修改配置文件
vi /var/lib/pgsql/12/data/pg_hba.conf

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

4、重启PostgreSQL服务

代码语言:javascript
复制
#重启PostgreSQL服务
sudo systemctl restart postgresql-12

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

四、PostgreSQL shell常用语法示例

启动SQL shell:

代码语言:javascript
复制
su postgres
psql

1、数据库相关语法示例

代码语言:javascript
复制
#创建数据库
CREATE DATABASE mydb;

#查看所有数据库
\l

#切换当前数据库
\c mydb

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

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

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

代码语言:javascript
复制
#新建用户
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、相关阅读

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/02/26 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、前言
    • 1、本文主要内容
      • 2、本文环境信息与适用范围
      • 二、PostgreSQL安装
        • 1、导入yum源
          • 1、安装PostgreSQL服务
            • 2、初始化数据库
              • 3、启动PostgreSQL服务
              • 二、修改postgres账号密码
                • 1、进入PostgreSQL命令行
                  • 2、启动SQL Shell
                    • 3、修改密码
                    • 三、配置远程访问
                      • 1、开放端口
                        • 2、修改IP绑定
                          • 3、允许所有IP访问
                            • 4、重启PostgreSQL服务
                            • 四、PostgreSQL shell常用语法示例
                              • 1、数据库相关语法示例
                                • 2、用户与访问授权语法示例
                                • 五、备注
                                  • 1、相关阅读
                                  相关产品与服务
                                  云数据库 MySQL
                                  腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
                                  领券
                                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档