PostgreSQL编译安装教程

devtools/2024/12/25 14:56:43/

下载安装

1.在家目录创建一个文件夹放下载安装包

mkdir softwarecd software

2.下载文件压缩包


wget https://ftp.postgresql.org/pub/source/v16.0/postgresql-16.0.tar.gz

3.解压


tar -xzvf  postgresql-16.0.tar.gz

4.编译

在software/postgresql-16.0下

cd software/postgresql-16.0# 编译出现 no acceptable C compiler found in $PATH
yum install gcc-c++./configure --prefix=/usr/local/pgsql

编译过程中会出现三个数据包未发现的情况的一个情况


yum install libicu-develyum install -y readline-develyum install zlib-devel

看到这个就是编译好了 

5.安装

make && make install 

用户权限和环境变量设置

#创建用户组postgres
groupadd postgres
#创建用户postgres并设置groups、gid和家目录
useradd -g postgres -G postgres -d /home/postgresql postgres 
#设置用户密码
passwd postgres

创建数据目录和日志目录

注意当前路径是在/usr/local/pgsql下

cd /usr/local/pgsql
mkdir data log

设置权限

接下来需要设置权限,将/usr/local/pgsql (我们安装PostgreSQL数据库的目录) 目录全部赋权给postgres用户

chown -R postgres.postgres /usr/local/pgsql/

设置环境变量

为了方便起见设置一下相关的环境变量,此处是要设置postgres用户的环境变量,所以首先要把Linux的登陆用户由root切换到以postgres用户登陆。

su - postgres
vim .bash_profile

添加一下配置 

PGHOME=/usr/local/pgsql
export PGHOMEPGDATA=/usr/local/pgsql/data
export PGDATAPATH=$PATH:$HOME/.local/bin:$HOME/bin:$PGHOME/bin

刷新配置生效

source /home/postgresql/.bash_profile

检查是否生效

psql -V

看到安装PostgreSQL的版本号则代表生效 

初始化数据库

cd /usr/local/pgsql/bin/ 

这个是这个数据库的初始化指令

如果pgdata目录没有指定,则会默认使用环境变量中的PGDATA指定的目录作为数据库存放的目录,由于之前我们刚刚设置了"PGDATA=/usr/local/pgsql/data"环境变量,所以此处我们也就无需再额外指定,直接执行初始化命令即可。

initdb

 这样就成功了

修改配置文件 

在"/usr/local/pgsql/data"的目录可以看到生成的数据和配置文件等。

cd /usr/local/pgsql/data

数据库访问控制配置文件

主要是配置postgresql.conf 和 pg_hba.conf 个。

  1. postgresql.conf 针对实例的配置
  2. pg_hba.conf 针对数据库访问的控制
vim postgresql.conf 


 

vim pg_hba.conf

PostgreSQL启动与关闭

手动

pg_ctl -D /usr/local/pgsql/data -l /usr/local/pgsql/log/pg_server.log start

自动

此步骤需要root用户操作

PostgreSQL解压后的安装包目录中提供了数据库启动与关闭的脚本,此脚本不但可以帮助我们简化操作,而且可以用作开机启动的脚本和service/systemctl 控制服务的脚本。目录里"linux"文件就是我们要找的文件。

cd /root/software/postgresql-16.0/contrib/start-scripts/

把文件"linux"拷贝到目录"etc/init.d/"下,并改名为postgresql
把脚本文件"postgresql"加入到开机启动的程序列表。
赋予"postgresql"文件有执行的权限。

cp /root/software/postgresql-16.0/contrib/start-scripts/linux /etc/init.d/postgresqlchkconfig --add postgresql或者systemctl enable postgresqlchmod 755 /etc/init.d/postgresql

启动和停止 

service postgresql startservice postgresql stop

客户端测试连接

链接时候要在root启动

su - postgrespsql

设置数据库密码密码

postgres=# \password

放开安全策略。


http://www.ppmy.cn/devtools/145283.html

相关文章

新手SEO指南如何快速入门与提升网站排名

内容概要 搜索引擎优化(SEO)是提高网站可见度和排名的重要手段,尤其对新手来说,掌握其基本概念和实用技巧至关重要。本文将针对新手提供一系列的指导,帮助你快速入门并逐步提升网站排名。 首先,了解SEO的…

PLSQL 客户端连接 Oracle 数据库配置

1. 安装Oracle客户端 首先,安装Oracle客户端。可以从Oracle官方网站下载Oracle Instant Client, 安装完成后,请记住安装路径,因为将在后续步骤中需要用到它。 2. 配置环境变量 添加环境变量 ORACLE_HOME 安装Oracle客户端后,配…

git bash中文显示问题

个人博客地址&#xff1a;git bash中文显示问题 | 一张假钞的真实世界。 默认情况下git bash中文以ASCII编码&#xff0c;不方便查看&#xff0c;如下&#xff1a; $ git status 位于分支 master尚无提交要提交的变更&#xff1a;&#xff08;使用 "git rm --cached <…

基于Spring Boot的电影网站系统

一、技术架构 后端框架&#xff1a;Spring Boot&#xff0c;它提供了自动配置、简化依赖管理、内嵌式容器等特性&#xff0c;使得开发者可以快速搭建起一个功能完备的Web应用。 前端技术&#xff1a;可能采用Vue.js、JS、jQuery、Ajax等技术&#xff0c;结合Element UI等组件库…

latex 常用指令

文章目录 1. 插入图片2. 数学公式交叉引用 1. 插入图片 \begin{figure}[htbp] % 可选位置参数&#xff0c;如htbp&#xff08;here, top, bottom, page&#xff09;\centering % 使图片居中显示\includegraphics[width15cm]{figure/图片.png} % 插入图片\caption{图片标题} % 给…

Vue + ECharts 实现山东地图展示与交互

这篇文章中&#xff0c;我将逐步介绍如何使用 Vue 和 ECharts 实现一个互动式的地图展示组件&#xff0c;其中支持返回上一层地图、点击查看不同城市的详细信息&#xff0c;以及根据数据动态展示不同的统计信息。 效果图&#xff1a;玩转山东地图&#xff1a;用Echarts打造交互…

比特币市场震荡:回调背后的机遇与挑战

在刚刚过去的一周&#xff0c;比特币经历了一次显著的回调。从历史高点108,300美元一路下跌&#xff0c;跌幅一度接近15%&#xff0c;最低曾触及92,000美元附近。然而&#xff0c;随着市场情绪逐步趋于平稳&#xff0c;比特币价格已经回升至96,000美元&#xff0c;进入震荡整理…

单火线智能开关语音芯片方案

RAMSUN提供的超低功耗语音识别芯片AT6811适用于单火线智能开关&#xff0c;AT6811是一款超低功耗的离线语音芯片&#xff0c;集成先进的语音活动监测、声纹识别、自动消噪神经网络&#xff0c;拥有高效的电源管理模块、数字和模拟语音信号输入接口以及ARM Cortex-M0内核&#x…