• Cenots7 离线安装部署PostgreSQL


    1 PostgreSQL源码包下载并复制

    1.1 PostgreSQL源码包下载:

    访问PostgreSQL官网
    在这里插入图片描述

    选择所需版本进行下载,本次下载安装版本为v14.5
    在这里插入图片描述

    1.2 复制源码包至服务器

    使用SSH终端工具,远程连接服务器,并使用终端工具提供的上传工具,把postgresql-14.5.tar.gz 上传至服务器/usr/local/postgres14.5/src 文件夹下
    #建目录文件夹的命令

    [root@localhost local]# mkdir -p /usr/local/postgres14.5/src
    
    • 1

    2 基于PostgreSQL源码安装

    2.1 解压缩源码

    #切换到源码目录

    [root@localhost local]# cd /usr/local/postgres14.5/src
    
    • 1

    #解压gz

    [root@localhost src]# gunzip postgresql-14.5.tar.gz
    
    • 1

    #解压tar

    [root@localhost src]# tar -xf postgresql-14.5.tar
    
    • 1

    在这里插入图片描述

    2.2 检查环境 指定安装路径

    检查环境,指定安装目录和服务端口

    [root@localhost postgresql-14.5]# ./configure --prefix=/usr/local/pgsql-14.5 --with-pgport=5435
    
    • 1

    在这里插入图片描述

    注意:使用configure脚本检查,无错误或警告提示方可进行下一步编译操作,若有错误或警告提示需根据提示进行相关操作。
    2.3 编译

    [root@localhost postgresql-14.5]# make
    
    • 1

    在这里插入图片描述

    2.4 安装

    [root@localhost postgresql-14.5]# make install
    
    • 1

    在这里插入图片描述

    安装位置在2.2 由 --prefix=/usr/local/pgsql-14.5中指定

    3 postgresql的配置

    提示:在本文档的描述的安装过程前,系统已经安装有其它版本的PostgreSQL,本次安装非升级安装。

    3.1 创建用户和组

    创建组

    [root@localhost ~]# groupadd postgres
    
    • 1

    创建用户并加入组

    [root@localhost pgsql-14.5]#useradd -g postgres postgres
    
    • 1

    3.2 创建数据库库文件存储目录、给postgres赋予权限

    创建数据库库文件存储目录data

    [root@localhost DISK-8T]# mkdir -p /run/media/postgres/data
    
    • 1

    data目录授权给postgres.postgres

    [root@localhost DISK-8T]# chown postgres.postgres /run/media/postgres/data
    
    • 1

    3.3 初始化数据库目录

    #切换用户

    [root@localhost bin]# su – postgres
    
    • 1

    在这里插入图片描述

    #初始化数据 -D指定初始化创建的数据库的文件路径

    -bash-4.2$ /usr/local/pgsql-14.5/bin/initdb -D /run/media/postgres/data
    
    • 1

    在这里插入图片描述

    提示:红框中标注为postgres14.5的启动方式

    /usr/local/pgsql-14.5/bin/pg_ctl -D /run/media/postgres/data -l logfile start
    
    • 1

    3.4 启动停止postgres14.5

    3.4.1 启动

    切换用户 PG是禁止使用超级管理员来运行该命令的

    [root@localhost lib]# su postgres
    
    • 1

    启动数据库

    -bash-4.2$ /usr/local/pgsql-14.5/bin/pg_ctl -D /run/media/postgres/data -l logfile start
    
    • 1

    在这里插入图片描述

    3.4.2 停止

    切换到postgres用户

    [root@localhost pgsql]# su - postgres
    
    • 1

    上一次登录:三 10月 19 13:31:02 CST 2022pts/0 上

    -bash-4.2$ /usr/local/pgsql-14.5/bin/pg_ctl -D /run/media/postgres/data -l logfile stop
    
    • 1

    在这里插入图片描述

    3.4.3 权限不足的解决方法

    在这里插入图片描述

    切换到postgres用户,运行数据库启动命令报logfile: 权限不够,可按下列方法解决:
    编辑sudoers配置文件 ,按下图红框所示,给postgres用户添加提升权限的配置

    [root@localhost bin]# vi /etc/sudoers
    
    • 1

    在这里插入图片描述

    3.4.4 修改管理员密码
    说明:因服务器存在多个版本的PG,因此先在/ usr / bin中创建一个postgre14.5版本对应的psql链接

    [root@localhost psql]# ln -s /usr/local/pgsql-14.5/bin/psql /usr/bin/psql145
    
    • 1

    切换用户

    [root@localhost psql]# su - postgres
    
    • 1

    上一次登录:三 10月 19 14:08:33 CST 2022pts/0 上
    #运行postgre14.5 对应的psql
    -bash-4.2$ psql145
    psql145 (14.5)
    Type “help” for help.
    postgres=#
    修改管理员密码
    \q再exit退出

    postgres=# alter role postgres with password '123';
    
    • 1

    在这里插入图片描述

    3.5 开启远程访问

    3.5.1 开启远程访问

    #切换到数据库目录

    [root@localhost pgsql]# cd /run/media/postgres/data
    
    • 1

    #修改postgresql.conf 配置文件,开启远程访问
    把listen_addresses = ‘localhost’,修改成 listen_addresses = ‘*’
    #可在此文件中修改服务端口

    [root@localhost postgre14.5Data]# vi postgresql.conf
    
    • 1

    在这里插入图片描述

    3.5.2 配置认证方式
    修改pg_hba.conf 添加远程访问的认证方式
    未尾添加 host all all 0.0.0.0/0 md5

    [root@localhost postgre14.5Data]# vi pg_hba.conf
    
    • 1

    在这里插入图片描述

    3.5.3 测试连接
    使用Navicat测试数据库连接
    在这里插入图片描述

  • 相关阅读:
    微分方程和线性代数(分离变量法开始)
    首个ChatGPT机器人- Figure 01;李开复旗下零一万物推出Yi系列AI大模型API
    Gamefi与DeFi之间有什么关系?
    android —— 阴影效果和跑马灯效果Textview
    vue在调用摄像头扫码(vue-qrcode-reader)
    蜜雪冰城、茶颜悦色“卷”向咖啡赛道
    Leetcode—2578.最小和分割【简单】
    visual studio 2022 opencv 4.6.0 创建测试工程
    基于阿里巴巴dropshipping应用程序的Shopify税收
    Android超简单的显示网络图片方法
  • 原文地址:https://blog.csdn.net/kongzhonliuxing/article/details/127458770