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

PostgreSQL编译安装教程

下载安装

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

放开安全策略。

相关文章:

PostgreSQL编译安装教程

下载安装 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…...

【提审】Android包提审报权限问题

问题:华为应用市场审核不通过 平台审核检测详情: 日志: 自检工具:frida-server【Unity&Android】安卓app自测应用隐私相关获取和申请权限_apk 隐私合规 自测-CSDN博客 参考资料:Unity启动时获取了android_id等设…...

xdoj 数字个数统计

1-2 数字个数统计 2 时间限制&#xff1a; 1S 题目描述&#xff1a; 一个正整数 n&#xff08;1<n<1000)&#xff0c;在区间[n,n2 ]&#xff08;含端点&#xff09;内统计奇数个数、 偶数个数、能被 4 整除且不能被 3 整除的数字个数&#xff0c;并求出各统计数字两两…...

空天地遥感数据识别与计算--数据分析如何助力农林牧渔、城市发展、地质灾害监测等行业革新

在科技飞速发展的时代&#xff0c;遥感数据的精准分析已经成为推动各行业智能决策的关键工具。从无人机监测农田到卫星数据支持气候研究&#xff0c;空天地遥感数据正以前所未有的方式为科研和商业带来深刻变革。然而&#xff0c;对于许多专业人士而言&#xff0c;如何高效地处…...

Git:查看分支、创建分支、合并分支

一、查看分支 查看的git命令如下&#xff1a; git branch # 列出本地已经存在的分支&#xff0c;并且当前分支会用*标记 git branch -r # 查看远程版本库的分支列表 git branch -a # 查看所有分支列表&#xff08;包括本地和远程&#xff0c;remotes/开头的表示远程分支&…...

联合目标检测与图像分类提升数据不平衡场景下的准确率

联合目标检测与图像分类提升数据不平衡场景下的准确率 在一些数据不平衡的场景下&#xff0c;使用单一的目标检测模型很难达到99%的准确率。为了优化这一问题&#xff0c;适当将其拆解为目标检测模型和图像分类模型的组合&#xff0c;可以更有效地控制最终效果&#xff0c;尤其…...

Git的简介

文章目录 一.Git是什么二.核心概念三.工作流程四.Git的优势 下载Git 推荐官网下载 官网地址 一.Git是什么 Git是一个分布式版本控制系统&#xff0c;用于跟踪文件的变化并协调多人对同一项目的开发工作。它就像是一个时光机器&#xff0c;能够记录文件在不同时间点的状态&…...

麒麟操作系统服务架构保姆级教程(四)NGINX中间件

如果你想拥有你从未拥有过的东西&#xff0c;那么你必须去做你从未做过的事情 想要在网页上访问到代码那么就需要用到应用服务类中间件&#xff0c;国外的有Nginx&#xff0c;Tomcat等&#xff0c;国内的有金蝶web&#xff0c;东方通的服务中间件&#xff08;Tongweb&#xff0…...

Glide 自定义圆角、铺满FitXY

在 Android 开发中&#xff0c;使用 Glide 来加载图片时&#xff0c;有时需要对图片进行特定的处理&#xff0c;比如设置圆角或者使图片完全填充到一个视图中&#xff08;类似于 ImageView 的 scaleType 中的 FitXY&#xff09;。以下是如何使用 Glide 来实现这些自定义需求的处…...

蓝牙协议——音乐启停控制

手机播放音乐 手机暂停音乐 耳机播放音乐 耳机暂停音乐...

Krita安装krita-ai-diffusion工具搭建comfyui报错没有ComfyUI_IPAdapter_plus解决办法

我们在使用Kirta安装krita-ai-diffusion工具之后搭建comfyui环境需要安装很多扩展文件。 一般正常安装都可以使用了。 但是有一个插件很特别,无论你安装多少遍都会显示缺失,是什么插件这么难搞定呢? 没错,就是我们的ComfyUI_IPAdapter_plus插件。 就像下图一样: 那么怎…...

四相机设计实现全向视觉感知的开源空中机器人无人机

开源空中机器人 基于深度学习的OmniNxt全向视觉算法OAK-4p-New 全景硬件同步相机 机器人的纯视觉避障定位建图一直是个难题&#xff1a; 系统实现复杂 纯视觉稳定性不高 很难选到实用的视觉传感器 为此多数厂家还是采用激光雷达的定位方案。 OAK-4p-New 为了弥合这一差距…...

LightGBM分类算法在医疗数据挖掘中的深度探索与应用创新(上)

一、引言 1.1 医疗数据挖掘的重要性与挑战 在当今数字化医疗时代,医疗数据呈爆炸式增长,这些数据蕴含着丰富的信息,对医疗决策具有极为重要的意义。通过对医疗数据的深入挖掘,可以发现潜在的疾病模式、治疗效果关联以及患者的健康风险因素,从而为精准医疗、个性化治疗方…...

JVM(Java虚拟机)的组成部分详解

摘要&#xff1a; JVM (Java Virtual Machine) 是一个抽象计算模型&#xff0c;它使Java程序可以在任何支持JVM的操作系统上运行&#xff0c;而无需考虑底层硬件架构。本文将深入探讨JVM的内部结构和工作机制&#xff0c;包括类加载器、运行时数据区、执行引擎以及内存管理等关…...

jsp中的四个域对象(Spring MVC)

在Spring MVC中&#xff0c;Model中的数据会被自动放入到请求域&#xff08;Request Scope&#xff09;中。也就是说&#xff0c;当我们在控制器中使用model.addAttribute()时&#xff0c;这些属性会被放入到HttpServletRequest对象的属性中。 让我们通过代码来详细解释&#…...

计算机基础知识复习12.24

http和https有那些区别 http是超文本传输协议&#xff0c;信息是明文传输&#xff0c;存在安全风险的问题&#xff0c;https则解决http不安全的缺点&#xff0c;在TCP和HTTP网络层之间加入了SSL/TLS安全协议&#xff0c;使得报文能够加密传输 http连接建立相对简单&#xff0…...

如何使用vscode解决git冲突

在使用VSCode时&#xff0c;遇到Git冲突是很常见的情况。Git冲突是指当多个人同时修改同一个文件的同一行或相邻行时&#xff0c;Git无法自动决定应该保留哪一个修改&#xff0c;需要手动解决这个冲突。 要解决Git冲突&#xff0c;可以按照以下步骤操作&#xff1a; 1. 打开V…...

告别卡顿:CasaOS轻NAS设备安装Gopeed打造高效下载环境

文章目录 前言1. 更新应用中心2.Gopeed安装与配置3. 本地下载测试4. 安装内网穿透工具5. 配置公网地址6. 配置固定公网地址 前言 无论你是需要大量文件传输的专业人士&#xff0c;还是只是想快速下载电影或音乐的普通用户&#xff0c;都会使用到下载工具。如果你对现有的下载工…...

Java 重写(Override)与重载(Overload)

重写 (Override) 重写是子类对父类的允许访问的方法的实现过程进行重新编写&#xff01;返回值和形参都不能改变。即外壳不变&#xff0c;核心重写&#xff01; 重写的好处在于子类可以根据需要&#xff0c;定义特定于自己的行为。 也就是说子类能够根据需要实现父类的方法。…...

HDFS与HBase有什么关系?

1 、 HDFS 文件存储系统和 HBase 分布式数据库 HDFS 是 Hadoop 分布式文件系统。 HBase 的数据通常存储在 HDFS 上。 HDFS 为 HBase 提供了高可靠性的底层存储支持。 Hbase 是 Hadoop database ,即 Hadoop 数据库。它是一个适合于非结构化数据存储的数据库, HBase 基于列的…...

【kafka】Golang实现分布式Masscan任务调度系统

要求&#xff1a; 输出两个程序&#xff0c;一个命令行程序&#xff08;命令行参数用flag&#xff09;和一个服务端程序。 命令行程序支持通过命令行参数配置下发IP或IP段、端口、扫描带宽&#xff0c;然后将消息推送到kafka里面。 服务端程序&#xff1a; 从kafka消费者接收…...

golang循环变量捕获问题​​

在 Go 语言中&#xff0c;当在循环中启动协程&#xff08;goroutine&#xff09;时&#xff0c;如果在协程闭包中直接引用循环变量&#xff0c;可能会遇到一个常见的陷阱 - ​​循环变量捕获问题​​。让我详细解释一下&#xff1a; 问题背景 看这个代码片段&#xff1a; fo…...

转转集团旗下首家二手多品类循环仓店“超级转转”开业

6月9日&#xff0c;国内领先的循环经济企业转转集团旗下首家二手多品类循环仓店“超级转转”正式开业。 转转集团创始人兼CEO黄炜、转转循环时尚发起人朱珠、转转集团COO兼红布林CEO胡伟琨、王府井集团副总裁祝捷等出席了开业剪彩仪式。 据「TMT星球」了解&#xff0c;“超级…...

DBAPI如何优雅的获取单条数据

API如何优雅的获取单条数据 案例一 对于查询类API&#xff0c;查询的是单条数据&#xff0c;比如根据主键ID查询用户信息&#xff0c;sql如下&#xff1a; select id, name, age from user where id #{id}API默认返回的数据格式是多条的&#xff0c;如下&#xff1a; {&qu…...

全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比

目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec&#xff1f; IPsec VPN 5.1 IPsec传输模式&#xff08;Transport Mode&#xff09; 5.2 IPsec隧道模式&#xff08;Tunne…...

鸿蒙DevEco Studio HarmonyOS 5跑酷小游戏实现指南

1. 项目概述 本跑酷小游戏基于鸿蒙HarmonyOS 5开发&#xff0c;使用DevEco Studio作为开发工具&#xff0c;采用Java语言实现&#xff0c;包含角色控制、障碍物生成和分数计算系统。 2. 项目结构 /src/main/java/com/example/runner/├── MainAbilitySlice.java // 主界…...

在web-view 加载的本地及远程HTML中调用uniapp的API及网页和vue页面是如何通讯的?

uni-app 中 Web-view 与 Vue 页面的通讯机制详解 一、Web-view 简介 Web-view 是 uni-app 提供的一个重要组件&#xff0c;用于在原生应用中加载 HTML 页面&#xff1a; 支持加载本地 HTML 文件支持加载远程 HTML 页面实现 Web 与原生的双向通讯可用于嵌入第三方网页或 H5 应…...

【Go语言基础【12】】指针:声明、取地址、解引用

文章目录 零、概述&#xff1a;指针 vs. 引用&#xff08;类比其他语言&#xff09;一、指针基础概念二、指针声明与初始化三、指针操作符1. &&#xff1a;取地址&#xff08;拿到内存地址&#xff09;2. *&#xff1a;解引用&#xff08;拿到值&#xff09; 四、空指针&am…...

C++:多态机制详解

目录 一. 多态的概念 1.静态多态&#xff08;编译时多态&#xff09; 二.动态多态的定义及实现 1.多态的构成条件 2.虚函数 3.虚函数的重写/覆盖 4.虚函数重写的一些其他问题 1&#xff09;.协变 2&#xff09;.析构函数的重写 5.override 和 final关键字 1&#…...

保姆级【快数学会Android端“动画“】+ 实现补间动画和逐帧动画!!!

目录 补间动画 1.创建资源文件夹 2.设置文件夹类型 3.创建.xml文件 4.样式设计 5.动画设置 6.动画的实现 内容拓展 7.在原基础上继续添加.xml文件 8.xml代码编写 (1)rotate_anim (2)scale_anim (3)translate_anim 9.MainActivity.java代码汇总 10.效果展示 逐帧…...