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

在Centos7上安装PostgreSQL16的详细步骤

文章目录

  • 环境
  • 一、准备
  • 二、postgresql下载
    • 方法一:wget下载
    • 方法二:下载压缩包
    • 解压
  • 三、创建用户组、用户
  • 四、创建数据主目录
  • 五、配置环境变量
  • 六、initdb初使化数据库
  • 七、配置服务
  • 八、设置开机自启动
  • 九、设置防火墙
  • 十、启动数据库服务


环境

CPU: 4 核心或以上
内存: 8 GB 或以上
硬盘: 50 GB 或更多的
SSD 空间 网络: 1 Gbps


一、准备

1.安装依赖包

yum install -y perl-ExtUtils-Embed readline-devel zlib-devel pam-devel libxml2-devel libxslt-devel openldap-devel python-devel gcc-c++ openssl-devel cmake

2.安装ICU库

yum install -y libicu libicu-devel

3.创建目录

mkdir /soft
mkdir -p /opt/pgsql/postgresql

二、postgresql下载

下载到soft目录下

cd /soft/

方法一:wget下载

yum -y install wget
yum install -y ca-certificates
wget https://ftp.postgresql.org/pub/source/v16.3/postgresql-16.3.tar.gz

方法二:下载压缩包

下载地址:https://www.postgresql.org/ftp/source/v16.3/

在这里插入图片描述

解压

先将文件夹解压

tar -zxvf postgresql-16.3.tar.gz

进入解压后的文件夹

cd postgresql-16.3
ls

编译postgresql源码

./configure --prefix=/opt/pgsql/postgresql

源码编译安装

make
make install

三、创建用户组、用户

groupadd postgres
useradd -g postgres postgres

在这里插入图片描述

四、创建数据主目录

cd /opt/pgsql/postgresql
mkdir data
chown postgres:postgres data

在这里插入图片描述

五、配置环境变量

进入home/postgres目录找到.bash_profile文件

cd /home/postgres/
ls -la

打开.bash_profile

vi .bash_profile

在.bash_profile中添加:

export PGHOME=/opt/pgsql/postgresql
export PGDATA=$PGHOME/data
export PATH=$PATH:$HOME/bin:$PGHOME/bin

请添加图片描述

使环境变量生效

source .bash_profile

六、initdb初使化数据库

切换用户到postgres并使用initdb初使化数据库

su - postgres
initdb

在这里插入图片描述
在这里插入图片描述

七、配置服务

修改/opt/pgsql/postgresql/data目录下postgresql.conf文件

cd /opt/pgsql/postgresql/data
vi postgresql.conf

在这里插入图片描述

修改/opt/pgsql/postgresql/data目录下pg_hba.conf 文件

vi pg_hba.conf

在这里插入图片描述

八、设置开机自启动

添加linux文件属性并复制到/etc/init.d目录下,更名为postgresql然后修改/etc/init.d/postgresql文件的两个变量

su root
cd /soft/postgresql-16.3/contrib/start-scripts
chmod a+x linux
cp linux /etc/init.d/postgresql
vi /etc/init.d/postgresql

在这里插入图片描述

设置postgresql服务开机自启动

chkconfig --add postgresql
chkconfig

在这里插入图片描述

九、设置防火墙

安装依赖包设置防火墙添加postgresql服务到防火墙,并加载

yum -y install firewalld
systemctl start firewalld
systemctl status firewalld
firewall-cmd --permanent --zone=public --add-service=postgresql
firewall-cmd --reload

在这里插入图片描述

十、启动数据库服务

启动PostgreSQL服务并测试

service postgresql start
ps -ef | grep postgres
su - postgres
psql

在这里插入图片描述


http://www.lryc.cn/news/390910.html

相关文章:

  • MySQL 图形化界面
  • 【人工智能】GPT-5的即将到来:从高中生进化到,,,博士生?
  • 【收录率高丨投稿范围广 | 往届均已EI检索】第四届光学与通信技术国际学术会议(ICOCT 2024,8月9-11)
  • 小阿轩yx-LVS负载均衡群集
  • CPP知识点记录总结
  • Spring源码(一) 如何阅读 Spring 源码
  • 【代码随想录训练营】【Day 63】【单调栈-2】| Leetcode 42, 84
  • CTF常用sql注入(一)联合注入和宽字节
  • 薄冰英语语法学习--冠词1
  • 基于Java中的SSM框架实现野生动物公益保护系统项目【项目源码+论文说明】计算机毕业设计
  • c->c++(二):class
  • 11 UDP的可靠传输协议QUIC
  • 14-20 Vision Transformer用AI的画笔描绘新世界
  • LVS FILTER UNUSED OPTION
  • Python后端面试题
  • docker打包 arm32v7/debian 问题总结
  • 【HarmonyOS4学习笔记】《HarmonyOS4+NEXT星河版入门到企业级实战教程》课程学习笔记(二十)
  • Vuetify3:监听当前手机还是电脑
  • Zabbix 配置钉钉告警
  • TTL转RS232与USB转TTL
  • 【力扣 896】单调数列 C++题解(循环)
  • 代码随想录Day71(图论Part07)
  • [Mdp] lc 494. 目标和(01背包变种+dp+dfs)
  • React vs Vue:谁是构建现代Web应用的王者?
  • Linux CentOS 宝塔中禁用php8.2的eval函数详细图文教程
  • Matlab 中 fftshift 与 ifftshift
  • 被裁了(9年)
  • 13. Revit API: Filter(过滤器)
  • hadoop 3.X 分布式HA集成Kerbos(保姆级教程)
  • VDS虚拟导播切换台软件