一、安装

1、yum安装

# 添加yum源
$ yum -y install https://download.postgresql.org/pub/repos/yum/12/redhat/rhel-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm# 安装PostgreSQL
$ yum -y install postgresql12 postgresql12-server postgresql12-contrib# 检查版本信息
$ psql --version
psql (PostgreSQL) 12.3

2、初始化数据库

这里需要注意一下,初始化的时候可以指定postgresql的数据目录哦!

1)使用默认数据目录

yum安装的postgresql的默认数据目录为/var/lib/pgsql/12/data,直接初始化就行

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

2)使用自己规划好的数据目录

如果已经规划好别的数据目录,可以在初始化的时候用-D参数指定数据目录。

# 新建数据目录
mkdir -p /data/postgresql/data# 授权
chown -R postgres:postgres /data/postgresql/data# 切换到postgres用户,初始化
$ su - postgres
-bash-4.2$ /usr/pgsql-12/bin/initdb -D /data/postgresql/data# 修改postgresql的system.service文件
vim /usr/lib/systemd/system/postgresql-12.service
Environment=PGDATA=/data/postgresql/data/# 重新加载系统服务
systemctl daemon-reload

3、启动 postgresql 服务

systemctl enable postgresql-12
systemctl start postgresql-12
systemctl status postgresql-12

postgresql会自动完成以下操作:

  • 自动生成一个linux系统用户postgres:管理数据库的系统用户

  • 数据库用户postgres:数据库超级管理员

  • 此用户的默认数据库为postgres

  • 可有修改下默认postgres数据库用户的密码:

    $ su - postgres
    -bash-4.2$ psql
    psql (12.3)
    Type "help" for help.postgres=# alter role postgres with password '123456';
    ALTER ROLE
    

二、修改配置

配置文件在数据目录中,由于我自定义了数据目录,所以是在/data/postgresql/data

cd /data/postgresql/datavim postgresql.conf# 修改监听的ip和端口
listen_addresses = '*' vim pg_hba.conf#新增下面一行
host all all 0.0.0.0/0 password # 所有的用户通过任意IP都可以使用面膜的方式登录PostgreSQL

重启数据库

systemctl restart postgresql-12

三、数据库的基础操作

1、连接数据库控制台

在本机想连接到数据库,需要切换到postgres用户下,在postgres用户下连接数据库,是不需要密码的。

切换 postgres 用户后,提示符变成-bash-4.2$,使用psql连接到数据库控制台,此时系统提示符变为postgres=#,如下:

$ su - postgres
-bash-4.2$ psql
psql (12.3)
Type "help" for help.postgres=#

2、SQL控制台操作语句

数据库创建与修改

# 创建数据库
create database testdb;# 删除数据库
drop database testdb;# 重命名数据库(该数据库必须没有活动的连接)
alter database testdb rename to newname;# 以其他数据库为模板创建数据库(表结构、数据都会复制)
create database newdb template testdb;# 将查询结果写入文件
\o /tmp/test.txt
select * from test;# 列状显示
\w# 再一次\o关闭写入,否则是连续写入的
\o# 退出控制台
\q

数据库用户创建和授权

# 建立新的数据库用户
create user durant with password '123456';# 为新用户建立数据库
create database testdb owner durant;# 把新建的数据库权限赋予新用户
grant all privileges on database testdb to durant;

四、认证方式

认证权限的配置文件为:pg_hba.conf

命令行的参数说明

  • -U username:用户名,默认值为postgres
  • -d dbname:要连接的数据库名,默认值为postgres。如果指定-d参数,则默认访问与用户名名称相同的数据库;
  • -h hostname:主机名,默认值为localhost
  • -p port:端口号,默认值5432;

1、认证方式

常见的四种身份验证方式:

  • trust:凡是能连接到服务器的,都是可信任的。只需要提供数据库用户名,可以没有对应的操作系统同名用户;
  • password 和 md5:对于外部访问,需要提供 psql 用户名和密码。对于本地连接,提供 psql 用户名密码之外,还需要有操作系统访问权(用操作系统同名用户验证)。password 和 md5 的区别就是外部访问时传输的密码是否用 md5 加密;
  • ident:对于外部访问,从 ident 服务器获得客户端操作系统用户名,然后把操作系统作为数据库用户名进行登录;对于本地连接,实际上使用了peer;
  • peer:通过客户端操作系统内核来获取当前系统登录的用户名,并作为psql用户名进行登录。

2、远程登录

要允许远程登录,需要修改配置文件中的监听ip和认证方式。

vim postgresql.conf# 修改监听的ip和端口
listen_addresses = '*' vim pg_hba.conf#新增下面一行
host all all 0.0.0.0/0 password

需要重启生效:

systemctl restart postgresql-12

验证:

[root@localhost ~]# psql -Upostgres -d postgres -h 192.168.0.125 -p 5432

参考文档:
https://www.cnblogs.com/sunhongleibibi/p/11943393.html

PostgreSQL-12安装和简单操作相关推荐

  1. postgresql数据库安装及简单操作

    自从MySQL被Oracle收购以后,PostgreSQL逐渐成为开源关系型数据库的首选. 本文介绍PostgreSQL的安装和基本用法,供初次使用者上手.以下内容基于Debian操作系统,其他操作系 ...

  2. mongodb 的安装与简单操作

    mongodb 的安装与简单操作 更好的阅读体验:https://www.wolai.com/shNyWgzza49EytaDHnr1j4 目录 环境 实验内容 安装mongodb 数据库操作 创建并 ...

  3. untubu安装mysql_简单操作阿里云untubu服务器并且配置LAMP环境

    前言 简单操作阿里云untubu服务器并且配置LAMP环境 Linux常用命令 在配置untubu服务器之前,我们得先看几个简单的linux常用的简单命令 sudo以管理员的身份执行命令 查看文件 l ...

  4. python官方下载链接_Python下载、安装及简单操作介绍(附下载链接)

    Python下载 官网:https://www.python.org/ #打开及下载速度非常慢,不建议 网盘: 3.5版本(链接:https://pan.baidu.com/s/1lB6jWjWG_o ...

  5. Ubuntu Linux操作系统tftp服务器和客户端安装(简单操作)

    操作系统:ubuntu(64位) 12.04,系统必须连接互联网! 以下绿色文字为终端输入命令,红色为错误信息,蓝色为提示信息,紫色为一般信息. 终端输入: tftp 192.168.1.102 发现 ...

  6. mongodb的安装与简单操作

    MongoDB中文社区:http://www.mongoing.com     数据库的使用场景 SQL(关系型数据库):MySQL.SQLServer  --->磁盘操作 1.高度事务性的场景 ...

  7. Jupyter-Notebook笔记-01 安装与简单操作

    文章目录 1 安装 1.1 PIP安装 1.2 Anacoda安装 2 配置 2.1 生成配置文件 2.2 生成密码 2.3 常用配置文件修改 2.4 配置jupyter运行内核 2.5 配置Jupy ...

  8. adb安装及简单操作

    一.pc端安装 下载包解压--cmd--进入包安装的路径--adb路径 1.获取工具platform-toolsadb version 这里要用到的工具是AndroidSDKAndroidDevToo ...

  9. css修改layui的下拉框样式 js_layui的安装以及简单操作

    最近有需要做前端界面的快速开发,于是就考虑到前端框架的使用.Layui是一款采用自身模块规范编写的前端 UI 框架,遵循原生 HTML/CSS/JS 的书写与组织形式,门槛极低,拿来即用.其外在极简, ...

最新文章

  1. java查看内存地址_Java内存机制和内存地址
  2. MPB:微生物所王军组-​人类肠道病毒粒子富集及纳米孔测序
  3. 获取cookie_抢券第一课:三种方法获取Cookie
  4. 解决chrome在ubuntu+root模式下打不开的问题
  5. Python工作笔记-解决python使用nohup后台运行重定向不输出问题
  6. bfo java_Java操作PDF文件(BFO) | 学步园
  7. 怎么用小学生计算机玩游戏,小学生不应该玩电脑游戏作文
  8. TMS320C55x汇编语言编程
  9. git remote命令入门
  10. win98老机子安装linux,只装了Win98电脑的Linux系统安装和修复
  11. 音频特征----频谱图
  12. 轻触开关式三功能手电筒3-5W驱动芯片AH3301
  13. pycharm如何正确打包ocr且让打包出来的exe尽量小
  14. C语言中简单冒泡排序不花里胡哨
  15. SpringBoot的幕后推手,java互联网架构师系统vip课程
  16. L​I​N​U​X​环​境​中​部​署​J​A​V​A​项​目​步​骤
  17. 华硕笔记本电脑计算机打不开,华硕笔记本电脑无线开关打不开怎么办
  18. python中的for语句涉及的序列可以是( )-Python for循环语句
  19. 《美味在哪》场景绘画教程
  20. 【社区周会】2021-03-23 内容概要

热门文章

  1. 【微信小程序】用户隐私协议合规修改
  2. 北航计算机考研复试线预测,2021年北京航空航天大学考研分数线预测!考生数学满分,网友:内心炸裂...
  3. php动图加水印,php+imagemagick给gif动态图片添加水印
  4. C# URL参数编码
  5. 为什么我家里修个房子,就是这么不容易?
  6. 实现绘图区的大十字光标
  7. python打印楼梯和笑脸_用Python的Turtle库打印楼梯,并打印笑脸:)
  8. ContactsUtil 工具类 - 转载
  9. JS压缩工具–jsMinifier
  10. Android之高仿雅虎天气(二)---代码结构解析