当前位置: 首页 > news >正文

centos7.9 postgresql 16.0 源码安装部署

postgresql 16.0 源码安装部署

  • 环境准备

    系统主机名IP地址
    centos7.9postgres192.168.200.56
  • 软件准备

    postgresql-16.0.tar.gz
    https://ftp.postgresql.org/pub/source/v16.0/postgresql-16.0.tar.gz
    
  • 依赖安装

    yum -y install systemd-devel readline readline-devel zlib-devel gcc
    
  • 创建安装用户

    useradd postgres# 设置用户密码,密码设置复杂一点
    echo '123456' | passwd --stdin postgres
    
  • 源码编译安装

    # 安装目录
    mkdir -p /data/server/pgsql# 数据目录
    mkdir -p /data/server/pgsql/data# 解压编译安装
    tar -zxvf postgresql-16.0.tar.gz
    cd postgresql-16.0
    ./configure --prefix=/data/server/pgsql --without-icu --with-systemd
    make && make install# 修改目录属主、属组
    chown -R postgres:postgres /data/server/pgsql# 切换到postgres用户初始化数据目录
    su - postgres
    /data/server/pgsql/bin/initdb -D /data/server/pgsql/data
  • 开机自启设置

    vim /etc/systemd/system/postgresql.service
    
    [Unit]
    Description=PostgreSQL 16.0 database server
    Documentation=man:postgres(1)
    After=network-online.target
    Wants=network-online.target[Service]Type=forking
    User=postgres
    Group=postgres
    OOMScoreAdjust=-1000
    ExecStart=/data/server/pgsql/bin/pg_ctl start -D /data/server/pgsql/data 
    ExecStop=/data/server/pgsql/bin/pg_ctl stop -D /data/server/pgsql/data
    ExecReload=/data/server/pgsql/bin/pg_ctl reload -D /data/server/pgsql/data 
    TimeoutSec=0[Install]
    WantedBy=multi-user.target
    
  • 启动服务

    systemctl daemon-reload
    systemctl enable postgresql
    systemctl start postgresql
    
  • 防火墙放行端口

    firewall-cmd --zone=public --permanent --add-port=5432/tcp
    firewall-cmd --reload
    
  • 连接数据库

    # 切换到 postgres用户
    su - postgres
    /data/server/pgsql/bin/psql# 创建用户及密码
    postgres=# create user gadmin password '123456';# 创建指定拥有者gadmin的数据库tt
    postgres=# create database tt owner gadmin;
    
  • 修改配置文件

    • postgresql.conf

      # 修改监听地址,否则无法远程连接
      listen_addresses = '*'
      port = 5432
      # 修改最大连接数
      max_connections = 1024
      # 设置socket目录
      unix_socket_directories = '/data/server/pgsql'
      # 开启日志获取
      logging_collector = on
      # 设置日志目录
      log_directory = 'pg_log'
      # 设置日志文件名称格式
      log_filename = 'postgresql-%Y-%m-%d.log'
      # 开启日志轮转
      log_truncate_on_rotation = on 
      
    • pg_hba.conf

      # IPv4 local connections:
      host    all             all             127.0.0.1/32            trust
      # 增加如下一行,远程连接,
      # tt为数据库名,gadmin为用户名,192.168.200.0/24为允许连接的地址范围,md5使用密码验证
      host    tt              gadmin          192.168.200.0/24        md5
      
  • 重启服务

    # 重启服务后就能使用gadmin账户远程连接tt数据库了
    systemctl restart postgresql
    
  • DBeaver连接postgresql
    在这里插入图片描述

相关文章:

  • MySQL进阶_5.逻辑架构和SQL执行流程
  • 数据结构(c语言版) 栈
  • 互联网系统安全(一)
  • 小程序员 scroll滚动与页面滚动冲突造成快速滑到底部卡顿失败问题
  • 蓝桥杯官网填空题(激光样式)
  • C#解析XML并反序列化为Model的方法
  • ubuntu20.04 安装cudnn
  • 单链表(3)
  • 成绩公布方式,这样操作更方便
  • 十三、W5100S/W5500+RP2040树莓派Pico<FTP Server>
  • ActiveMq学习⑨__基于zookeeper和LevelDB搭建ActiveMQ集群
  • 论文阅读:Ensemble Knowledge Transfer for Semantic Segmentation
  • 阿里云99元服务器2核2G3M带宽_4年396元_新老用户均可
  • VScode + opencv + c++ + win配置教程
  • 初识微服务技术栈
  • CSS魔法堂:Absolute Positioning就这个样
  • Docker下部署自己的LNMP工作环境
  • ECMAScript 6 学习之路 ( 四 ) String 字符串扩展
  • E-HPC支持多队列管理和自动伸缩
  • GraphQL学习过程应该是这样的
  • Intervention/image 图片处理扩展包的安装和使用
  • Laravel 菜鸟晋级之路
  • Linux快速配置 VIM 实现语法高亮 补全 缩进等功能
  • mysql常用命令汇总
  • React-生命周期杂记
  • Redis 中的布隆过滤器
  • Stream流与Lambda表达式(三) 静态工厂类Collectors
  • Vue2 SSR 的优化之旅
  • WinRAR存在严重的安全漏洞影响5亿用户
  • zookeeper系列(七)实战分布式命名服务
  • 从setTimeout-setInterval看JS线程
  • 汉诺塔算法
  • 湖南卫视:中国白领因网络偷菜成当代最寂寞的人?
  • 离散点最小(凸)包围边界查找
  • 使用Tinker来调试Laravel应用程序的数据以及使用Tinker一些总结
  • 云大使推广中的常见热门问题
  • ​​​​​​​GitLab 之 GitLab-Runner 安装,配置与问题汇总
  • ​软考-高级-系统架构设计师教程(清华第2版)【第15章 面向服务架构设计理论与实践(P527~554)-思维导图】​
  • # 日期待t_最值得等的SUV奥迪Q9:空间比MPV还大,或搭4.0T,香
  • #每日一题合集#牛客JZ23-JZ33
  • (3)STL算法之搜索
  • (Python) SOAP Web Service (HTTP POST)
  • (vue)el-checkbox 实现展示区分 label 和 value(展示值与选中获取值需不同)
  • (二)PySpark3:SparkSQL编程
  • (三)centos7案例实战—vmware虚拟机硬盘挂载与卸载
  • (四)汇编语言——简单程序
  • ***微信公众号支付+微信H5支付+微信扫码支付+小程序支付+APP微信支付解决方案总结...
  • .desktop 桌面快捷_Linux桌面环境那么多,这几款优秀的任你选
  • .NET Core 成都线下面基会拉开序幕
  • .net core 实现redis分片_基于 Redis 的分布式任务调度框架 earth-frost
  • .NET 中让 Task 支持带超时的异步等待
  • .Net+SQL Server企业应用性能优化笔记4——精确查找瓶颈
  • .net和jar包windows服务部署
  • .Net开发笔记(二十)创建一个需要授权的第三方组件
  • ??myeclipse+tomcat