Linux 在线yum安装: PostgreSQL 15.6数据库

Linux 在线yum安装: PostgreSQL 15.6数据库

  • 1、PostgreSQL数据库简介
  • 2、在线安装PostgreSQL15.6
  • 3、配置 PostgreSQL的环境变量
  • 4、使用默认用户登录PostgreSQL
  • 5、配置 PostgreSQL 允许远程登录
  • 6、修改 PostgreSQL 默认端口
  • 7、创建数据库和表、远程用户zyl
  • 8、pgAdmin远程访问该数据库(db_pg01)


💖The Begin💖点点关注,收藏不迷路💖

1、PostgreSQL数据库简介

PostgreSQL(又称 Postgres)是一种强大、开源的关系型数据库管理系统(RDBMS),它具有高度的可靠性、稳定性和可扩展性。以下是关于 PostgreSQL 数据库的一些简要介绍:

主要特点:

1、开源: PostgreSQL 是基于开源许可证发布的,任何人都可以免费使用、修改和分发它。

2、关系型数据库: PostgreSQL 是一种关系型数据库管理系统,支持 SQL 查询语言,具有强大的数据处理能力。

3、可扩展性: PostgreSQL 支持多种插件和扩展,可以满足各种不同规模和需求的应用场景。

4、支持复杂数据类型: 除了传统的数据类型外,PostgreSQL 还支持数组、JSON、XML 等复杂数据类型。

5、事务支持: PostgreSQL 提供完整的 ACID 事务支持,确保数据的一致性和可靠性。

6、触发器和存储过程: 支持触发器和存储过程,可以在数据库层面实现业务逻辑。

7、并发控制: 具有强大的并发控制能力,能够处理大量并发访问请求。

8、安全性: 提供强大的用户认证和权限管理功能,保护数据安全。

9、扩展性: 可以轻松地通过扩展模块来增加额外的功能,如全文搜索、地理信息系统等。

主要组件:

1、PostgreSQL 服务器(postgres): 数据库服务进程,负责接收客户端请求并执行相应的操作。

2、pgAdmin: 基于图形界面的管理工具,用于管理数据库、执行 SQL 查询等操作。

3、psql: 命令行工具,用于与 PostgreSQL 数据库进行交互和执行 SQL 命令。

4、扩展模块: 提供额外功能的模块,如 PostGIS 用于地理信息系统、pgcrypto 用于加密等。

2、在线安装PostgreSQL15.6

官方文档:https://www.postgresql.org/download/linux/redhat/

在这里插入图片描述

1、安装软件仓库 RPM 包:

sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm

在这里插入图片描述
2、安装 PostgreSQL 15:

sudo yum install -y postgresql15-server

在这里插入图片描述

3、可选:初始化数据库并设置自动启动:

sudo /usr/pgsql-15/bin/postgresql-15-setup initdb
sudo systemctl enable postgresql-15
sudo systemctl start postgresql-15

sudo systemctl status postgresql-15

在这里插入图片描述

4、查询已安装的 PostgreSQL 14 软件包的详细信息:

rpm -qi postgresql15

在这里插入图片描述
在 PostgreSQL 中,默认情况下会创建一个名为 “postgres” 的系统用户,用于管理 PostgreSQL 数据库服务。

在这里插入图片描述

3、配置 PostgreSQL的环境变量

1、编辑/etc/profile 配置文件:

vim /etc/profile 

2、在文件末尾添加以下行:

export PATH=$PATH:/usr/pgsql-15/bin

在这里插入图片描述
3、保存并应用更改:

source /etc/profile 

4、验证配置是否成功:

运行 psql --version 命令来验证 PostgreSQL 是否已经配置到系统环境变量中。如果成功配置,将显示 PostgreSQL 的版本信息。

psql --version

在这里插入图片描述

4、使用默认用户登录PostgreSQL

1、切换到 “postgres” 用户(默认不需要密码):

[root@zyl-server ~]# su postgres
bash-4.2$ psql
could not change directory to "/root": Permission denied
psql (15.6)
Type "help" for help.

postgres=# 

2、进入 PostgreSQL 命令行界面:

psql

3、修改 “postgres” 用户密码(postgres):

postgres=# ALTER USER postgres WITH PASSWORD 'postgres';
ALTER ROLE
postgres=# 

4、退出 PostgreSQL 命令行和 “postgres” 用户:

## 退出命令行
\q

## 退出postgres用户
exit

postgres=# \q
bash-4.2$ exit
exit

5、连接到 PostgreSQL 数据库(默认端口5432):

psql -h localhost -p 5432 -U postgres

在这里插入图片描述

5、配置 PostgreSQL 允许远程登录

通常情况下,postgresql.conf 文件位于 /var/lib/pgsql/15/data/ 下面。

1、修改 postgresql.conf 文件:

找到 postgresql.conf 中的 listen_addresses 配置项,并将其设置为 ‘*’,以允许来自任何 IP 地址的连接。如果希望只允许特定IP地址的连接,将其设置为相应的IP地址即可。

cd /var/lib/pgsql/15/data/


vim postgresql.conf 

##添加一行或修改
listen_addresses ='*'

在这里插入图片描述
2、修改 pg_hba.conf 文件:

找到并编辑 pg_hba.conf 文件,该文件用于设置客户端认证规则。

cd /var/lib/pgsql/15/data/

vim pg_hba.conf

在 pg_hba.conf 文件中,添加一条允许远程连接的规则。例如,可以添加以下规则以允许所有IP地址的所有用户通过密码进行连接:

host    all             all             0.0.0.0/0               scram-sha-256

在这里插入图片描述

6、修改 PostgreSQL 默认端口

1、编辑 postgresql.conf 文件:

在文件中找到 port = 5432 这一行(默认端口为5432),将其修改为想要的新端口号,例如 port = 5433。

vim postgresql.conf

在这里插入图片描述

2、重启 PostgreSQL 服务:

重启 PostgreSQL 服务使配置生效。

sudo systemctl restart postgresql-15

7、创建数据库和表、远程用户zyl

1、创建数据库:

[root@zyl-server data]# psql -h localhost -p 5433 -U postgres
Password for user postgres: 
psql (15.6)
Type "help" for help.

postgres=# CREATE DATABASE db_pg01;
CREATE DATABASE
postgres=# 

2、创建新用户,并设置密码:

CREATE USER zyl WITH ENCRYPTED PASSWORD 'zyl@2024';


-- 授予用户 zyl 对数据库 db_pg01 的所有权限
GRANT ALL PRIVILEGES ON DATABASE db_pg01 TO zyl;

-- 授予用户 zyl 对表 users 的所有权限
GRANT ALL PRIVILEGES ON TABLE users TO zyl;

3、创建表、插入数据:

## 连接到db_pg01数据库

postgres=# \c db_pg01;
You are now connected to database "db_pg01" as user "postgres".
db_pg01=# 

##创建表、插入数据

CREATE TABLE users (
    id SERIAL PRIMARY KEY,
    name VARCHAR(50),
    age INT
);

INSERT INTO users (name, age) VALUES ('Alice', 25);
INSERT INTO users (name, age) VALUES ('Bob', 30);
INSERT INTO users (name, age) VALUES ('Charlie', 28);
INSERT INTO users (name, age) VALUES ('David', 35);
INSERT INTO users (name, age) VALUES ('Eve', 22);

在这里插入图片描述

8、pgAdmin远程访问该数据库(db_pg01)

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

在这里插入图片描述


💖The End💖点点关注,收藏不迷路💖

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于Java的APK检测管理系统(Vue.js+SpringBoot)

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 数据中心模块2.2 开放平台模块2.3 软件档案模块2.4 软件检测模块2.5 软件举报模块 三、系统设计3.1 用例设计3.2 数据库设计3.2.1 开放平台表3.2.2 软件档案表3.2.3 软件检测表3.2.4 软件举报表 四、系统展示五、核心代…

机器学习-06-无监督算法-02-层次聚类和密度聚类DBSCAN算法

总结 本系列是机器学习课程的系列课程,主要介绍机器学习中无监督算法,包括层次和密度聚类等。 参考 DBSACN在线动态演示 本门课程的目标 完成一个特定行业的算法应用全过程: 懂业务会选择合适的算法数据处理算法训练算法调优算法融合 算…

摸鱼小技巧来啦,速来围观

一、前言 在日常测试中,很多小伙伴还是选择使用usb连接设备的方式去进行跑测,当需要连接多台设备就没办法在电脑上插入这么多设备,只能选择使用无线连接的方式去进行连接测试。你们快来get这份详细的无线连接设备教程吧~ 二、远程连接Andro…

demo版多人聊天系统

目录 ​编辑 一,引入 二,在Server端修改的代码 1,保存用户信息功能实现 2,拼接消息 3,广播消息 三, Client端要修改的代码 四,效果演示 一,引入 在上一篇文章udp网络服务器中&a…

LLM+Embedding构建问答系统的局限性及优化方案

LangChain LLM 方案的局限性:LLM意图识别准确性较低,交互链路长导致时间开销大;Embedding 不适合多词条聚合匹配等。 背景 在探索如何利用大型语言模型(LLM)构建知识问答系统的过程中,我们确定了两个核心…

飞跃前端瓶颈:技术进阶指南精华篇

引言: 在互联网的快车道上,前端技术日新月异。对于前端工程师而言,技术水平达到一定高度后,往往会遭遇成长的天花板。本文将探讨如何识别并突破这些技术瓶颈,分享实用的进阶策略和实践案例。 一、技术等级概览&#xf…

python知识点总结(七)

python知识点总结七 1、堆和栈的区别2、如何在局部修改全局的变量a、计算结果b、计算结果 3、如何修改一个enclosing变量4、关于值传递还是地址传值5、布尔类型6、逻辑运算7、字符串切片操作8、取整、取余、除数9、变量赋值10、字符串与数字相乘11、整型、浮点型、字符型之间相…

【LVGL-特殊符号】

LVGL-特殊符号 ■ LVGL-特殊符号 ■ LVGL-特殊符号 /* 直接调用 */ lv_label_set_text(my_label, LV_SYMBOL_OK); /* 与字符一起用 */ lv_label_set_text(my_label, LV_SYMBOL_OK "Apply"); /* 多个符号一起用 */ lv_label_set_text(my_label, LV_SYMBOL_OK LV_SYMBO…

智过网:一级建造师必须两年考过吗?有效期多久?

在建筑行业,一级建造师的职业资格证书是众多从业者追求的目标。然而,获得这一证书并非易事,它要求考生不仅具备扎实的专业知识,还需要在限定的时间内完成所有科目的考试。那么,一级建造师是否必须在两年内考完所有科目…

LeetCode - 存在重复元素

219. 存在重复元素 II 这道题可以用两个方法解决。 哈希表 从左到右遍历数组,并将数组的下标存到hash中,在遍历数字的过程中,如果hash中不存在nums[i],将nums[i]加入到hash当中,若存在,则判断下标之间的关…

九泰智库 | 医械周刊- Vol.16

⚖️ 法规动态 28类耗材联盟集采结果出炉,中选率仅27% 3月19日,河北省药械集采中心发布了《关于公示京津冀“3N”联盟28种集中带量采购医用耗材拟中选结果的通知》。共有202个产品被列为拟中选,产品中选率约为27%。本次集采未设置保底中标条…

buuctf_Reverse_wp_2

文章目录 [WUSTCTF2020]level3[base64变表]Youngter-drive[upx、多线程][FlareOn4]IgniteMe[算法分析]相册[APK、so文件、Native方法][WUSTCTF2020]Cr0ssfun[套娃、patience][GWCTF 2019]xxor[z3、算法分析][UTCTF2020]basic-re[FlareOn6]Overlong脚本输出动态调试 [FlareOn3]C…

科技强国:国产桌面操作系统正式上线,中国七位院士发表支持

操作系统是电子产品的核心,无论是手机还是电脑,都离不开它的支持。它是科技发展中至关重要的领域之一。备受瞩目的鸿蒙系统,作为国内颇具影响力的手机桌面操作系统,以其桌面组件自由整合和自定义风格的便捷性,引领了一…

运用YOLOv5实时监测并预警行人社交距离违规情况

YOLO(You Only Look Once)作为一种先进的实时物体检测算法,在全球范围内因其高效的实时性能和较高的检测精度受到广泛关注。近年来,随着新冠疫情对社交距离管控的重要性日益凸显,研究人员开始将YOLO算法应用于社交距离…

5G安全技术新突破!亚信安全5G安全迅龙引擎正式发布

5G专网应用飞速增长:2020年5G专网数量800个,2021年2300个,2022年5325个,2023年已经超过16000个,5G与垂直行业的融合快速加深,5G带来的变革正加速渗透至各行各业。 5G网络出现安全问题,将是异常严…

QT tableWidget横向众向设置

横向控件 要设置QTabWidget选项卡的字体方向,可以使用QTabWidget的setTabPosition()方法。通过传递Qt枚举值QTabWidget.east或QTabWidget.west作为参数,可以设置选项卡的字体方向为从左到右或从右到左。 myTabWidget QTabWidget() myTabWidget.setTabP…

【论文精读】DALLE3:Improving Image Generation with Better Captions 通过更好的文本标注改进图像生成

文章目录 一、文章概览二、数据重标注(一)现在训练数据的文本标注主要存在的问题(二)创建图像标注器(三)微调图像标注器 三、评估重新标注的数据集(一)混合合成标注和真实标注&#…

【vue】vue中的路由vue-router,vue-cli脚手架详细使用教程

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…

PCD8000D开关调光/调色线性恒流LED控制芯片 无需变压器及电阻电容 只需极少元器件

概述 PCD8000D 是一款开关调节亮度/色温的LED恒流驱动IC。适用于AC 180V-240V 或AC 90V- 130V 输入电压,恒流精度小于 5% 。PCD8000D在3 段调节亮度应用中,可根据开启/关闭电源,依次改变输出电流的大小,从而改变LED 灯的亮度, …

RK3568驱动指南|第二篇 字符设备基础-第13章 杂项设备驱动实验

瑞芯微RK3568芯片是一款定位中高端的通用型SOC,采用22nm制程工艺,搭载一颗四核Cortex-A55处理器和Mali G52 2EE 图形处理器。RK3568 支持4K 解码和 1080P 编码,支持SATA/PCIE/USB3.0 外围接口。RK3568内置独立NPU,可用于轻量级人工…