1.运行环境

    WSL+Ubuntu 20.04

  2.安装Postgresql

  进入Linux命令行,参照Postgresql官网安装指南

# Create the file repository configuration:
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list' # Import the repository signing key:
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add - # Update the package lists:
sudo apt-get update # Install the latest version of PostgreSQL.
# If you want a specific version, use 'postgresql-12' or similar instead of 'postgresql':
#下面语句为安装默认最新版本postgresql
#如果安装非默认版本,则指定版本。如安装14版本,则在程序包名称后输入版号,”postgresql-14“
sudo apt-get -y install postgresql

安装完成

  3.启动Posgtgresql数据库

  (1)查看数据库状态

   sudo service postgresql status

  (2)启动数据库

  sudo service postgresql start

  (3)停止数据库

  sudo service postgresql stop

  (4)重启数据库

  sudo service postgresql restart

  4.修改postgres密码

  (1)配置linux的postgres用户

  PostgreSQL默认安装,会创建一个默认的linux用户postgres,设置postgres用户密码

  •   删除用户postgres的密码

  sudo passwd -d postgres

  •   设置用户postgres的密码

  sudo -u postgres passwd

  • 创建新的超级用户

  sudo -u postgres createuser --superuser 【user name】

(2)配置新的数据库账户

  • 登录Postgresql客户端

  sudo -u postgres psql

  • 设置新的数据库用户postgres的密码

  ALTER USER postgres WITH PASSWORD 'postgres';

  \password

(3)查看当前数据库账户

  \c

(4)查看全部数据库账户

  \du

  5.配置Postgresql

  参照PostgreSQL 允许远程访问设置方法 - 疯子110 - 博客园 (cnblogs.com)

  (1)配置文件路径

    Postgresql 14配置文件默认路径/etc/postgresql/14/main/

  (2)PostgreSQL 角色和身份认证方式

    PostgreSQL 数据库访问权限是通过角色来处理的。一个角色代表一个数据库用户或者一个数据库用户组。

    PostgreSQL 支持多种身份认证方式。最常用的方法如下:

    Trust - 只要满足 pg_hba.conf 定义的条件,一个角色就可以不使用密码就能连接服务器。
    Password - 通过密码,一个角色可以连接服务器。密码可以被存储为 scram-sha-256、md5 和 password(明文)。
    Ident - 仅仅支持 TCP/IP 连接。它通常通过一个可选的用户名映射表,获取客户端操作系统用户名。
    Peer - 和 Ident 一样,仅仅支持本地连接。

  •  修改/etc/postgresql/14/main/中的pg_hba.conf文件,增加一行,【host all all 172.28.192.0/24 scram-sha-256】其中IP地址为客户端的IP地址。
  •  由于WSL2的特性,每次宿主系统或子系统重新启动,WSL的宿主端和客户端的IP会发生变化。

# IPv4 local connections:

    host all all 127.0.0.1/32 scram-sha-256
    host all all 172.28.192.0/24 scram-sha-256

    参考:PostgreSQL 角色和身份认证方式

  6.设置防火墙

  参照ubuntu关于防火墙开放端口 - 博二爷 - 博客园 (cnblogs.com)

  7.卸载Postgresql

  (1)查看Postgresql进程

  ps -C postgres

  确认无运行Postgresql

  (2)卸载Postgresql 相关的包

  sudo apt-get --purge remove postgresql\*
  (3)删除配置文件和User

  rm -r /etc/postgresql/

  rm -r /etc/postgresql-common/

  rm -r /var/lib/postgresql/

  userdel -r postgres

  groupdel postgres

  卸载完成

参考:PostgreSQL 安装 & 用户配置 - 小蒋不素小蒋 - 博客园 (cnblogs.com)

Ubuntu 20.24 安装Postgresql 14的更多相关文章

  1. Ubuntu下编译安装postgreSQL 10.5

    Ubuntu下编译安装postgreSQL 10.5 ubuntu 16.04 LTS系统postgreSQL 10.5 安装包准备 1.从PostgreSQL官网下载PostgreSQL的安装包 安 ...

  2. Windows 10平台安装PostgreSQL 14.2详细教程

    Windows 10平台安装postgreSQL 14.2.1,安装步骤很简单,基本上是点击下一步(next). 使用SQL Shell(psql)进行交互:使用pgAdmin工具进行管理. tips ...

  3. Ubuntu 20.04安装Docker

    Docker学习系列文章 入门必备:十本你不容错过的Docker入门到精通书籍推荐 day1.全面的Docker快速入门教程 day2.CentOS 8.4安装Docker day3.Windows1 ...

  4. Windows Azure上的Odoo(OpenERP)-1.创建Ubuntu虚拟机,安装PostgreSQL 数据库

    前提是您必须拥有Windows Azure的账号,如果没有的话,可以去Windows Azure 中国区网站申请免费试用账号.哈哈,我就是第一批申请的试用账号,感觉自己挺幸运的.申请的过程就不写了,请 ...

  5. ubuntu 20.04 安装 vim8.2

    由于ubuntu 20.04自带的vim版本比较老了,有些新装的插件适配不上,所以需要安装最新版本的vim.在网上找了很久也没有比较官方的安装教程所以记录一下. 安装依赖库 sudo apt inst ...

  6. linux Ubuntu 16.04安装 postgresql

    两次的重装系统安装数据库折磨的死去活来. 安装步骤: 1,运行  sudo apt-get update     --这个用来查找数据源 2 ,运行  apt install postgresql  ...

  7. 在Ubuntu Server上安装Postgresql

    首先更新一下源: sudo apt-get update 如果你不知道Postgresql具体的包的名称,可以使用一下语句进行查找: apt-cache search ^Postgresql 使用上述 ...

  8. Ubuntu 20.04 安装和编译poco 1.10.1

    1.首先安装其openssl其它依赖库,打开终端,使用root账户(sudo su),完成以下库的安装 //安装odbc相关库 apt-get install unixodbc apt-get ins ...

  9. ubuntu 20.04 安装 ros1 和ros2

    ubuntu  选择Hong Kong 源 1. ROS1安装 添加 sources.list(设置你的电脑可以从 packages.ros.org 接收软件.) sudo sh -c '. /etc ...

  10. Ubuntu 16.04 安装 postgresql 9.3

    1.Ctrl+Alt+t 打开终端 2.输入:wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo a ...

随机推荐

  1. NIO 缓冲区 ByteBuffer 之黏包和半包

    一.低效率方式 /** * 黏包.半包 */ private static void buffExample2() { /* 网络上传输多条数据给服务器,数据之间使用 \n 分隔. 但由于某种原因(多 ...

  2. js - script标签的for属性和event属性

    js - script标签的for属性和event属性 <script language="javascript" for="window" event= ...

  3. leecode 22 括号生成

    22. 括号生成 数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合. 示例 1: 输入:n = 3 输出:["((()))"," ...

  4. js生成快速生成0~n的数组

    Object.keys(Array.from(Array(100)))

  5. NavicatPremium16破解!!!!!亲测可用!!!!!!!!!!!!!!!!!

    前言 Navicat premium是一款数据库管理工具,是一个可多重连线资料库的管理工具,它可以让你以单一程式同时连线到 MySQL.SQLite.Oracle 及 PostgreSQL 资料库,让 ...

  6. opencv基本函数详解笔记

    一.读取保存图片 Mat scrImage = imread("1.jpg"); //显示图像 imshow("原图", scrImage); //窗口等待 w ...

  7. .Net 6.0服务器环境配置以及IIS发布部署心得

    经过长达一个月的时间,对.Net 后端开发后的发布以及服务器域名等网站搭建全部过程留档,也帮助有需要的同志进行学习以及查看 https://www.cnblogs.com/xingmengcode/a ...

  8. pytest之conftest.py

    一.conftest.py的特点 1.可以跨.py文件调用,有多个.py文件调用时,可让conftest.py只调用了一次fixture,或调用多次fixture 2.conftest.py与运行的用 ...

  9. pyahocorasick 安装和使用问题总结

    因系统中用到了ahocorasick,但是程序跑起来有BUG,故而10.1假期研究了一下,趟过几个坑,分享一下. 一.安装过程中的坑 直接安装pip install  pyahocorasick 是会 ...

  10. UE4 联网RPC部分

    有些人生来就是为了奔跑,而有些人,则拥有更高的目标> 笔者近期在进行UE C++网络的一些开发,发现RPC这个部分它看起来很简单,理解起来也算不上难.但真正应用起来,对netcode经验不多的人 ...