离线安装PostgreSQL数据库(v13.4版本)

news2024/11/19 3:21:36

记录:328

场景:在CentOS 7.9操作系统上,离线安装PostgreSQL数据库,版本:v13.4。主要是PostgreSQL的编译、安装、启动、登录、设置远程可登录、创建数据库、创建数据库用户等。

版本:

操作系统:CentOS 7.9

数据库:PostgreSQL v13.4

1.主机规划

目标:使用一台主机部署PostgreSQL数据库。

主机app163;IP:192.168.19.163。

2下载安装包

下载地址:https://ftp.postgresql.org/pub/source/

下载命令:

wget https://ftp.postgresql.org/pub/source/v13.4/postgresql-13.4.tar.gz --no-check-certificate

解析:下载完成后,postgresql-13.4.tar.gz包在当前目录;--no-check-certificate,不验证服务端的证书。

3安装基础依赖

安装命令:yum install -y readline-devel zlib-devel zlib gcc

解析:安装基础依赖,避免安装PostgreSQL报错。

查看已安装命令:yum list installed | grep 包名关键字

解析:使用命令查看基础依赖包是否已经安装。

4创建系统普通用户

(1)创建用户

默认超级用户root不能启动PostgreSQL,创建系统普通用户postgres。

创建用户命令:useradd postgres

(2)不设置密码使用root用户切换到postgres

登录postgres命令:su postgres

退出postgresml:exit

(3)查看postgres用户

查看命令:cat /etc/group | grep postgres

5解压PostgreSQL包

postgresql包:postgresql-13.4.tar.gz

解压到指定目录:

tar -xzvf /home/apps/software/postgresql-13.4.tar.gz -C /home/apps/module

6规划安装目录

(1)规划安装目录

规划安装到目录:/home/apps/module/postgresql

创建目录:mkdir -p /home/apps/module/postgresql

(2)检查路径

操作目录:cd /home/apps/module/postgresql-13.4

执行命令:

./configure --prefix=/home/apps/module/postgresql

7编译PostgreSQL

操作目录:cd /home/apps/module/postgresql-13.4

编译命令:make -C /home/apps/module/postgresql-13.4

解析:-C,编译指定目录下内容。

8安装PostgreSQL

操作目录:cd /home/apps/module/postgresql-13.4

安装目标目录:/home/apps/module/postgresql

安装命令:make install PREFIX=/home/apps/module/postgresql

解析:使用PREFIX,把PostgreSQL安装到指定目录。在指定目录下生成:bin、include、lib、share。

9创建PostgreSQL的数据目录

创建命令:mkdir -p /home/data/postgresql/data

解析:data目录存放PostgreSQL的数据。

10修改数据目录和安装目录的用户所有权

PostgreSQL安装目录和数据目录,所有权修改为postgres用户。

安装目录赋权:chown -R postgres:postgres /home/apps/module/postgresql/

数据目录赋权:chown -R postgres:postgres /home/data/postgresql/data/

11设置PostgreSQL环境变量

(1)切换用户和目录

切换到postgres用户下操作。

切换命令:su postgres

切换到目录:cd /home/postgres

查看用户下配置文件清单:ll -a

(2)修改配置

修改配置:vi .bash_profile

修改内容:

PGHOME=/home/apps/module/postgresql
export PGHOME
PGDATA=/home/data/postgresql/data
export PGDATA
PATH=$PATH:$HOME/.local/bin:$HOME/bin:$PGHOME/bin

解析:PGHOME,安装目录;PGDATA,数据目录。

(3)配置生效

配置生效命令:source ./.bash_profile

(4)确认配置生效

查看版本命令:psql -V

打印信息:psql (PostgreSQL) 13.4

查看命令所在目录:which psql

打印信息:/home/apps/module/postgresql/bin/psql

以上,两条命令均可以验证配置已经生效。

(5)设置开机启动配置生效

默认情况下,重启机器后.bash_profile的环境变量会失效,需手动执行source命令刷新配置。设置为开机启动,自动刷新生效。

修改指令:vi /etc/profile

增加内容:source /home/postgres/.bash_profile

12初始化PostgreSQL数据库

初始化命令:initdb

解析:配置了环境变量,因此initdb命令在postgres用户任意命令可以使用。

打印成功信息:

Success. You can now start the database server using:

pg_ctl -D /home/data/postgresql/data -l logfile start

13启动PostgreSQL数据库

(1)启动PostgreSQL

启动命令:pg_ctl -D /home/data/postgresql/data -l logfile start

启动命令(指定日志目录):

pg_ctl -D /home/data/postgresql/data -l /home/data/postgresql/data/postgres.log start

解析:在执行初始化initdb成功后,会提示登录命令。

打印信息:

waiting for server to start.... done

server started

(2)查看PostgreSQL监听端口

命令:netstat -atunlp | grep postgres

解析:PostgreSQL的默认端口是:5432。

14登录PostgreSQL数据库和修改密码

(1)登录PostgreSQL

登录命令:psql

解析:默认登录不需要密码。

(2)修改登录密码

修改命令:\password

口令:demo123456

解析:需输入两次

(3)退出登录

方式一:exit

方式二:\q

解析:两种方式都可以退出登录的数据库。

15设置远程可登录

(1)修改远程可登录

修改文件:vi /home/data/postgresql/data/postgresql.conf

修改内容:

listen_addresses = '*'

解析:把#listen_addresses = 'localhost',修改为匹配所有IP地址。

(2)修改登录需要密码

修改文件:vi /home/data/postgresql/data/pg_hba.conf

修改内容:

local   all  all  password
host    all  all  127.0.0.1/32  password
host    all  all  192.168.19.1/32  password
host    all  all  ::1/128  password

解析:192.168.19.1/32,部署PostgreSQL主机是192.168.19.163。

16重启PostgreSQL数据库

(1)重启数据库

重启动命令:

pg_ctl -D /home/data/postgresql/data -l /home/data/postgresql/data/postgres.log restart

解析:把日志打印到数据目录。

打印信息:

waiting for server to shut down.... done

server stopped

waiting for server to start.... done

server started

(2)登录数据库

命令:psql

解析:提示Password for user postgres:,需要输入登录密码。

17创建数据库

(1)创建数据库

命令:create database  hzdb;

(2)查看数据库列表

命令:\l

18创建数据库用户

(1)创建数据库用户

命令:create user hangzhou with password 'demo123456';

(2)查看数据库用户

命令:\du

19使用navicat工具登录

登录信息:192.168.19.163:5432

用户名和口令:hangzhou/demo123456

 以上,感谢。

2022年11月23日

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/29603.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

转铁蛋白修饰硬脂酸/棕榈酸 TF-PEG-C18 Stearic Acid/C16, palmitic acid

产品名称:转铁蛋白-聚乙二醇-硬脂酸 英文名称:TF-PEG-C18 Stearic Acid 纯度:95% 存储条件:-20C,避光,避湿 外观:固体或粘性液体,取决于分子量 PEG分子量可选:350、550、750、1k、2k…

G. Good Key, Bad Key(暴力)

Problem - 1703G - Codeforces 有n个箱子。第i个箱子里有ai个硬币。你需要按顺序打开所有n个箱子,从箱子1到箱子n。 你可以用两种类型的钥匙来打开箱子。 一把好钥匙,使用它需要花费k个硬币。 坏钥匙,不需要花费任何金币,但会将…

操作系统:进程的创建(fork函数)、进程的替换(exec函数)

文章目录1.进程的创建2.进程的替换3.进程的阻塞1.进程的创建 ①调用fork函数的进程为父进程,调用后生成一个子进程; ②创建子进程成功时,父进程中fork函数的返回值是子进程的进程号PID; ③创建子进程失败时,父进程中fo…

使用.NET简单实现一个Redis的高性能克隆版(一)

正文 我遇到了这个项目,它的目标是成为一个比Redis有着更好性能和更易用的克隆版。我发现它很有趣,因为它主要的卖点之一就是它是在多线程模式下运行(而不是像Redis那样是单线程)。他们使用memtier_benchmark(Redis项…

shell命令以及运行原理

shell命令以及运行原理shell命令以及运行原理shell命令以及运行原理 Linux严格意义上来说说的是操作系统,我们把操作系统称之为“内核”(kernel),但是我们用户是不会直接与kernel直接打交道的,我们是通过一个“外壳程…

D. Fixed Point Guessing(二分+交互式问题)

Problem - D - Codeforces 这是一个互动问题。 最初,有一个数组a[1,2,...,n],其中n是一个奇数正整数。陪审团选择了n-12对不相干的元素,然后对这些元素进行交换。例如,如果a[1,2,3,4,5],对1↔4和3↔5进行互换&#xf…

吐血经验,怎么把OAK相机的镜头模组拆下来?

消息快播:OpenCV众筹了一款ROS2机器人rae,开源、功能强、上手简单。来瞅瞅~ 编辑:OAK中国 首发:oakchina.cn 喜欢的话,请多多👍⭐️✍ 内容可能会不定期更新,官网内容都是最新的,请查…

[AI] LRTA*(K) 搜索算法

LRTA*[k]搜索算法 一、理论二、实际应用步骤一、理论 LRTA*(K) 是LRTA* 算法的进阶版,关于LRTA*的回顾请点此处, LRTA*(K) 论文请点此处 该文作者把LRTA算法归为 无界传播(unbounded propagation, 中文用谷歌翻译的。。。囧),LRTA(K)归为有…

第四章:JVM运行时参数

一、JVM参数选项类型类型一:标准参数选项类型二:-X参数选项类型三: -XX参数选项二、常用的 JVM 参数选项打印设置的 XX 选项及值堆、栈、方法区的参数栈堆方法区垃圾回收器相关参数Serial回收器ParNew 回收器ParallelGcCMS回收器G1 回收器如何…

Win11杜比全景声无法正常运行的解决方法教学

Win11杜比全景声无法正常运行的解决方法教学。我们的电脑开启杜比声全景音效之后,无论是看电影,还是听音乐,都可以获得更加良好的视听体验。但是有用户却遇到了电脑无法正常的开启杜比声音效的问题,一起来看看如何去解决的方法吧。…

【Selenium】Selenium4 Grid

Selenium Grid: 将客户端发送的命令转发到远程浏览器上执行 WebDriver 脚本。 简介 Selenium Grid 是由一个 hub 服务和若干个 node 代理节点组成。 Hub 调度服务,管理各个代理节点的注册信息和状态信息,并且接收来自客户端代码的调用请求,…

13.练习题(年月日,打字游戏)

练习 1.任意给出一个年、月、日,判断是这一年的第几天:闰年算法:能被4整除且不能被100整除,或者能被400整除。 如:2012 5 10 是这一年的第131天。 提示:使用数组的方式计算,将每月的天数放在一…

面试学习总结

之前根据视频做的总结,备个份。 一、Volatile关键字 volatile是Java虚拟机提供的轻量级的同步机制。 三个特性: 保证可见性 线程修改了工作内存中的值并写回到主内存之后,主内存立刻通知所有线程。称为可见性。(结合JMM理解&am…

蓝桥杯刷题(三)

蓝桥杯刷题一.等差素数列(较难)二.货物摆放(思路新奇)三.既约分数四.跳跃五.数值求值(坑题)蓝桥杯题库一.等差素数列(较难) 这道题有公式,其等差就是它长度内所有素数的乘…

Seata安装并注册集成到Nacos服务上

目录 一.工具地址与版本 二.解压与配置 三.创建数据库,执行脚本 四.启动与调试 五.seata高可用 六.查看启动情况 一.工具地址与版本 1.nacos-server-2.0.3 下载地址:Releases alibaba/nacos GitHub 2.seata-server-1.4.2 下载地址&#xff1…

小侃设计模式(十四)-职责链模式

1.概述 责任链模式(Chain of Responsibility Pattern)是为请求创建了一个接收者对象的链,让请求沿着这条链进行传播,直到有对象处理它为止,它属于典型的行为型模式。这种方式降低了发送者和处理者之间的耦合关系&…

HTML+CSS简单的网页制作期末作业 关于我的家乡——四川文化网页介绍 DW大学生网页作业制作设计 Dreamweaver简单网页成品

家乡旅游景点网页作业制作 网页代码运用了DIV盒子的使用方法,如盒子的嵌套、浮动、margin、border、background等属性的使用,外部大盒子设定居中,内部左中右布局,下方横向浮动排列,大学学习的前端知识点和布局方式都有…

chapter1——亚稳态的世界

目录1.亚稳态理论2.亚稳态窗口3.计算MTBF4.避免亚稳态多级同步器时钟倍频电路的多级同步器5.亚稳态测试电路6.同步器类型7.综合性建议在异步系统中,由于数据和时钟的关系不是固定的,因此有时会出现违反建立和保持时间的现象,此时便会输出介于…

OTA: Optimal Transport Assignment for Object Detection原理与代码解读

paper:OTA: Optimal Transport Assignment for Object Detection code:https://github.com/Megvii-BaseDetection/OTA 背景 标签分配(Label Assignment)是目标检测中重要的一环,经典的标签分配策略采用预定义的规则…

Type-challehges learning: pick

type-challenges/README.zh-CN.md at main TIMPICKLE/type-challenges GitHub 最近真的是迷上了type-challenges。无法自拔 TS真是太香了&#xff01; 今天手写一个pick 从类型定义的属性中&#xff0c;选取指定一组属性&#xff0c;返回一个新的类型定义。 type Pick<T…