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

4、在 CentOS 8 系统上安装 pgAdmin 4

pgAdmin 4 是一个开源的数据库管理工具,专门用于管理和操作 PostgreSQL 数据库系统。它提供了一个图形用户界面(GUI),使用户能够轻松地连接到 PostgreSQL 数据库实例,执行 SQL 查询,管理数据库对象,备份和还原数据,以及监控数据库性能。

  1. 跨平台性:pgAdmin 4 是跨平台的工具,支持 Windows、macOS 和各种 Linux 发行版,因此可以在不同的操作系统上运行。

  2. 图形用户界面:pgAdmin 4 提供直观的图形用户界面,使用户能够轻松地管理 PostgreSQL 数据库,而无需深入了解命令行工具。这使得数据库管理更加友好和可视化。

  3. 多连接支持:您可以同时连接到多个 PostgreSQL 数据库实例,这对于管理多个数据库或服务器非常有用。每个连接都可以配置为访问不同的数据库,甚至可以连接到不同版本的 PostgreSQL。

  4. SQL 查询工具:pgAdmin 4 提供了一个强大的 SQL 查询工具,允许您编写和执行 SQL 查询。您还可以保存和加载查询,以便稍后重用。

  5. 数据库对象管理:您可以使用 pgAdmin 4 创建、修改和删除数据库对象,如表、视图、索引、函数、架构等。它还提供了一个树形视图,以便快速导航和管理数据库对象。

  6. 备份和还原:pgAdmin 4 允许您创建数据库备份,以及还原已创建的备份。这是数据库维护和灾难恢复的关键功能。

  7. 数据导入和导出:您可以使用 pgAdmin 4 导入和导出数据,以从不同的数据源导入数据到 PostgreSQL 数据库,或者将数据导出到其他格式,如 CSV 或 Excel。

  8. 图形化可视化工具:pgAdmin 4 提供了一些可视化工具,以帮助您理解数据库性能和结构。这包括查询计划可视化、性能监视器和表空间管理。

  9. 扩展性:pgAdmin 4 支持通过插件扩展功能,可以根据需要安装和启用不同的插件,以满足特定的数据库管理需求。

  10. 安全性:pgAdmin 4 提供了多种安全性功能,包括密码保护、SSL连接支持和权限管理,以确保数据库的安全性。

  11. 活跃的社区支持:pgAdmin 4 是一个开源项目,有着活跃的社区支持和持续的开发,因此可以期待不断改进和更新。

pgAdmin 4 适用于 PostgreSQL 数据库的管理和维护。它使数据库管理变得更加容易,特别是对于那些不太熟悉命令行的用户。

在这里插入图片描述
pgAdmin 4 提供了丰富的功能,以便于 PostgreSQL 数据库的管理和操作。其主要功能有:

  1. 数据库连接管理:pgAdmin 4 允许您连接到多个 PostgreSQL 数据库实例,管理这些连接,并轻松切换之间的连接。

  2. SQL查询工具:提供一个强大的 SQL 查询工具,可以编写、编辑和执行 SQL 查询,以检索和修改数据库中的数据。

  3. 数据库对象管理:允许您创建、修改和删除数据库对象,如表、视图、索引、函数、模式等。

  4. 数据导入和导出:支持将数据从不同格式(如CSV、Excel)导入到数据库中,以及将数据导出到其他格式。

  5. 备份和还原:您可以创建数据库备份,并在需要时还原数据库。这对于数据库的备份和灾难恢复非常重要。

  6. 表空间管理:用于管理数据库表空间的工具,可以更有效地组织和管理数据库对象的存储。

  7. 查询工具:提供查询计划可视化、性能监视器和执行计划分析,以帮助优化查询性能。

  8. 可视化工具:允许您通过可视化方式查看和理解数据库结构,包括表、视图、关系和外键等。

  9. 扩展性:支持插件系统,可以安装和启用各种插件以扩展工具的功能。

  10. 安全性:提供密码保护、SSL连接支持和权限管理,以确保数据库的安全性。

  11. 多语言支持:pgAdmin 4 支持多种语言,以满足不同用户的需求。

  12. SQL编辑器:具有语法高亮、代码自动补全和错误检查功能的 SQL 编辑器,使编写SQL查询更容易。

  13. 服务器状态监视:允许监视数据库服务器的性能和状态,包括连接、查询和资源使用情况。

  14. 定时任务:可以创建和管理定时任务,以执行数据库维护、数据清理和其他自动化任务。

  15. 版本控制:支持版本控制工具,如 Git,以便于协作和跟踪数据库模式的变化。

pgAdmin 4 提供了广泛的功能,使得管理和操作 PostgreSQL 数据库变得更加容易和高效。这些功能涵盖了数据库管理的各个方面,从基本的查询和对象管理到高级的性能监视和安全性。这使得它成为 PostgreSQL 数据库管理员和开发人员的强大工具。

pgAdmin 4 是一个跨平台的数据库管理工具,支持多种操作系统和平台。

  1. Windows:pgAdmin 4 支持 Windows 操作系统,包括 Windows 7、 8、Windows 10、11 以及 Windows Server 系列服务器版本。

  2. macOS:pgAdmin 4 也可以在 macOS 上运行,提供了与 macOS 系统集成的功能。

  3. Linux:pgAdmin 4 在各种 Linux 发行版上都可以运行,包括但不限于 Ubuntu、Debian、Fedora、CentOS、Red Hat Enterprise Linux(RHEL)等。

  4. Docker:pgAdmin 4 还提供了 Docker 容器版本,允许您在支持 Docker 的任何平台上运行它。

pgAdmin4 是python开发的web应用程序,既可以部署为web模式通过浏览器访问,也可以部署为桌面模式独立运行。

官方下载地址:https://www.pgadmin.org/download/

在这里插入图片描述
上次我们已经在CentOS 8 系统上安装好了 PostgreSQL 15.4 数据库服务器,这是安装pgAdmin 4 的前提条件。

今天我们来尝试下继续在CentOS 8 系统上安装 pgAdmin 4。

在 CentOS 8 上安装 pgAdmin 4 可以通过包管理器和虚拟环境(Virtual Environment)两种方式来进行。

在实际生产环境中,采用虚拟环境安装 pgAdmin 4 是一种常用的方式,因为它具有以下优点:

  1. 隔离性:虚拟环境将 pgAdmin 4 安装在独立的环境中,不会影响系统范围的 Python 包。这意味着您可以在不同的虚拟环境中安装不同版本的 pgAdmin 4,而不会发生冲突。

  2. 版本管理:使用虚拟环境,您可以轻松地管理 pgAdmin 4 的不同版本。这对于开发和测试不同版本的应用程序或在不同的项目中使用不同版本的 pgAdmin 4 非常有用。

  3. 依赖项管理:虚拟环境允许您在特定环境中定义和管理依赖项。这有助于确保 pgAdmin 4 所需的依赖项与应用程序的其他部分不发生冲突。

  4. 易于升级和回滚:虚拟环境可以轻松升级或回滚到特定版本,而不会影响其他部分的系统。这在测试新版本、修复问题或回滚到以前的稳定版本时非常有用。

  5. 灵活性:虚拟环境提供了更大的灵活性,可以自定义安装和配置,以满足特定项目或用户需求。

  6. 安全性:虚拟环境可以限制对系统范围的 Python 包的访问,从而提高安全性。它可以减少潜在的依赖关系冲突和漏洞的风险。

  7. 不需要 root 权限:在虚拟环境中安装 pgAdmin 4 通常不需要 root 权限,这可以提高安全性和降低风险。

尽管使用虚拟环境安装 pgAdmin 4 在某些情况下更复杂,但它通常是一种更推荐的方法,特别是在开发和测试环境中。

但在生产环境中,我们也可以使用 Web 服务器来提供 pgAdmin 4,以便通过 Web 浏览器访问,而不是在本地虚拟环境中安装。

这样可以更好地满足生产环境的安全性和可维护性需求。

接下来我们选择常用的方式,使用虚拟环境安装 pgAdmin 4:

  1. 安装依赖项:首先,确保您的 CentOS 8 系统已经安装了一些必要的依赖项,如Python和一些开发工具。您可以使用以下命令来安装这些依赖项:

    sudo dnf install python3 python3-pip python3-devel gcc make
    

在这里插入图片描述

  1. 安装虚拟环境工具:安装 Python 的虚拟环境工具,以便为 pgAdmin 4 创建一个独立的环境:

    sudo pip3 install virtualenv
    

在这里插入图片描述

  1. 创建虚拟环境:创建一个新的虚拟环境,您可以在其中安装 pgAdmin 4:

    mkdir ~/pgadmin4
    cd ~/pgadmin4virtualenv venv
    

在这里插入图片描述

  1. 激活虚拟环境:激活虚拟环境以确保安装的软件包不会影响系统范围的 Python 包:

    source venv/bin/activate
    

在这里插入图片描述

  1. 下载和安装 pgAdmin 4:使用 pip 安装 pgAdmin 4。您可以选择稳定版本或开发版本:

    • 安装稳定版本:

      pip install pgadmin4
      
    • 安装开发版本:

      pip install https://ftp.postgresql.org/pub/pgadmin/pgadmin4/snapshots/pgadmin4-latest.tar.gz
      

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

  1. 配置 pgAdmin 4:在虚拟环境中,运行以下命令来生成 pgAdmin 4 的配置文件:
  /root/pgadmin4/venv/bin/python venv/lib/python3.6/site-packages/pgadmin4/setup.py

注意:确保将上述命令中的 “3.x” 替换为您实际使用的 Python 版本。
在这里插入图片描述

  1. 启动 pgAdmin 4:使用以下命令启动 pgAdmin 4 Web 服务器:
/root/pgadmin4/venv/bin/python venv/lib/python3.6/site-packages/pgadmin4/pgAdmin4.py

请确保将 “3.x” 替换为您的 Python 版本。
在这里插入图片描述

  1. 访问 pgAdmin 4:在浏览器中访问 http://localhost:5050,我们将看到 pgAdmin 4 的登录界面。默认情况下,用户名是我们配置的 “opss@github.com”,密码是 “pgadmin”。您可以在首次登录后更改密码。

在这里插入图片描述
登录后如图所示:

在这里插入图片描述
也可以在登陆界面选择简体中文

在这里插入图片描述

这样,我们就成功在 CentOS 8 上安装并运行了 pgAdmin 4。请注意,如果我们计划在生产环境中使用 pgAdmin 4,还需要进行一些额外的配置和安全性考虑,以确保系统的稳定性和安全性。

相关文章:

4、在 CentOS 8 系统上安装 pgAdmin 4

pgAdmin 4 是一个开源的数据库管理工具,专门用于管理和操作 PostgreSQL 数据库系统。它提供了一个图形用户界面(GUI),使用户能够轻松地连接到 PostgreSQL 数据库实例,执行 SQL 查询,管理数据库对象&#xf…...

【数字人】3、LIA | 使用隐式空间来实现视频驱动单张图数字人生成(ICLR 2022)

文章目录 一、背景二、方法2.1 latent motion representation2.2 latent code driven image animation2.3 学习方式2.4 推理 三、效果3.1 数据集3.2 训练细节3.3 评估3.4 定性效果3.5 定量效果3.6 消融实验3.7 失败示例 论文:Latent Image Animator: Learning to An…...

深度学习基础知识 最近邻插值法、双线性插值法、双三次插值算法

深度学习基础知识 最近邻插值法、双线性插值法、双三次插值算法 1、最近邻插值法 1、最近邻插值法 *最邻近插值:将每个目标像素找到距离它最近的原图像素点,然后将该像素的值直接赋值给目标像素 优点:实现简单,计算速度快缺点&…...

计算机竞赛 : 题目:基于深度学习的水果识别 设计 开题 技术

1 前言 Hi,大家好,这里是丹成学长,今天做一个 基于深度学习的水果识别demo 这是一个较为新颖的竞赛课题方向,学长非常推荐! 🧿 更多资料, 项目分享: https://gitee.com/dancheng-senior/pos…...

【2023美团后端-8】删除字符串的方案,限制不能连续删

小美定义一个字符申是“美丽串”,当且仅当该字符串包含”mei”连续子串。例如”meimei”、“xiaomeichan"都是美丽串,现在小美拿到了一个字符串,她准备删除一些字符,但不能删除两个连续字符。小美希望最终字符串变成美丽串&a…...

蓝桥等考Python组别十七级008

第一部分:选择题 1、Python L17 (15分) 运行下面程序,输出的结果是( )。 def func(x, y): return (x - y) % 2 print(func(10, 5)) 2152.5正确答案:B 2、Python L17 (15分) 运行下面程序,输...

docker安装sql-server数据库,使用navicat实现备份数据库导入

docker安装sql-server,使用navicat实现备份数据库导入 1、docker安装sql-server数据库2、使用navicat连接sql-server3、使用navicat导入备份数据库1、第一步:选择需要备份的数据源2、第二步 (选择备份计划,设置还原文件位置信息&a…...

深度学习batch、batch_size、epoch、iteration以及小样本中episode、support set、query set关系

batch、batch_size、epoch、iteration关系: epoch:整个数据集 batch: 整个数据集分成多少小块进行训练 batch_size: 一次训练(1 batch)需要 batch_size个样本 iteration: 整个数据集需要用b…...

Air001 TIM1高级定时器单脉冲输出模式使用

Air001 TIM1高级定时器单脉冲输出模式使用 ✨本例程基于合宙官方提供的标准库以及Demo工程作为验证参考。📍官方提供的SDK包资源:https://gitee.com/openLuat/luatos-soc-air001🌿想了解STM32高级定时器单脉冲输出模式了解可以参考阅读:https…...

矿机生意难做,比特大陆停发工资

文/章鱼哥 出品/陀螺财经 沉寂了许久的比特大陆,因为一则延迟发薪的公告引起了圈内热议,熊市下,曾经风头无两的比特大陆,现金流也会扛不住吗? 据吴说区块链报道,多名比特大陆内部员工确认,比特大…...

计算机竞赛python区块链实现 - proof of work工作量证明共识算法

文章目录 0 前言1 区块链基础1.1 比特币内部结构1.2 实现的区块链数据结构1.3 注意点1.4 区块链的核心-工作量证明算法1.4.1 拜占庭将军问题1.4.2 解决办法1.4.3 代码实现 2 快速实现一个区块链2.1 什么是区块链2.2 一个完整的快包含什么2.3 什么是挖矿2.4 工作量证明算法&…...

pyqt 划线标注工具,可用于车道线标注

目录 效果图: pyqt代码: opencv划线: 效果图: pyqt代码: import osfrom PyQt5.QtWidgets import QWidget, QApplication, QVBoxLayout, QPushButton, QLabel from PyQt5.QtGui import QPainter, QPen, QColor, QImage, QPixmap from PyQt5.QtCore import Qt, QPoint i…...

蓝桥等考Python组别十七级004

第一部分:选择题 1、Python L17 (15分) 运行下面程序,输出的结果是( )。 def func(x, y): return (x - y) // 2 print(func(10, 4)) 2356正确答案:B 2、Python L17 (15...

计算机毕业设计选什么题目好?springboot 职业技术学院图书管理系统

✍✍计算机编程指导师 ⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流! ⚡⚡ Java实战 |…...

外汇天眼:6个常见网络投资诈骗迹象,如发现任何一个,务必小心!

在这个数字时代,随着外汇和加密货币市场的不断发展,网络投资已经成为一种广受欢迎的理财方式。然而,近年来,诈骗犯罪也在不断增加,给社会带来了巨大的财务损失。尽管投资诈骗的手法各式各样,但它们都可以追…...

MyBatis的xml里#{}的参数为null报错、将null作为参数传递报错问题

今天在调试的过程中发现一个bug,把传入的参数写到查询分析器中执行没有问题,但是在程序中执行就报错:org.springframework.jdbc.UncategorizedSQLException : Error setting null parameter. Most JDBC drivers require that the JdbcType m…...

【网络安全】「漏洞原理」(一)SQL 注入漏洞之概念介绍

前言 严正声明:本博文所讨论的技术仅用于研究学习,旨在增强读者的信息安全意识,提高信息安全防护技能,严禁用于非法活动。任何个人、团体、组织不得用于非法目的,违法犯罪必将受到法律的严厉制裁。 【点击此处即可获…...

Go语言错误处理最佳实践

错误处理实践 我们在go语言中设计error的处理体系时候, 一般都会去做下面两点 直接使用errors.New()生成error接口的值 扩展error接口, 并定义扩展error接口的实现类型 error接口是什么? go语言的error是一个接口类型, 其源码如下: type error interface {Error() string…...

python结合excel数据轻松实现接口自动化测试

在刚刚进入测试行业的时候,最开始也是做功能测试,我想很多伙伴和我一样,觉得自动化测试都很高端,很神秘。迫不及待的想去学习作自动化测试。 以前比较常用数据库python做自动化,后面发现excel个人觉得更加适合&#x…...

构建精致 Chrome 插件:开箱即用的 TypeScript 模板 | 开源日报 No.51

tonsky/FiraCode Stars: 72.7k License: OFL-1.1 Fira Code 是一种免费的等宽字体,具有编程连字符。 Fira Code 提供了丰富多样的箭头和标点符号调整功能。Fira Code 支持各种不同的字符变体、风格集和其他字体特性,以满足用户个性化需求。Fira Code …...

Ubuntu系统下交叉编译openssl

一、参考资料 OpenSSL&&libcurl库的交叉编译 - hesetone - 博客园 二、准备工作 1. 编译环境 宿主机:Ubuntu 20.04.6 LTSHost:ARM32位交叉编译器:arm-linux-gnueabihf-gcc-11.1.0 2. 设置交叉编译工具链 在交叉编译之前&#x…...

超短脉冲激光自聚焦效应

前言与目录 强激光引起自聚焦效应机理 超短脉冲激光在脆性材料内部加工时引起的自聚焦效应,这是一种非线性光学现象,主要涉及光学克尔效应和材料的非线性光学特性。 自聚焦效应可以产生局部的强光场,对材料产生非线性响应,可能…...

uni-app学习笔记二十二---使用vite.config.js全局导入常用依赖

在前面的练习中,每个页面需要使用ref,onShow等生命周期钩子函数时都需要像下面这样导入 import {onMounted, ref} from "vue" 如果不想每个页面都导入,需要使用node.js命令npm安装unplugin-auto-import npm install unplugin-au…...

关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案

问题描述:iview使用table 中type: "index",分页之后 ,索引还是从1开始,试过绑定后台返回数据的id, 这种方法可行,就是后台返回数据的每个页面id都不完全是按照从1开始的升序,因此百度了下,找到了…...

2.Vue编写一个app

1.src中重要的组成 1.1main.ts // 引入createApp用于创建应用 import { createApp } from "vue"; // 引用App根组件 import App from ./App.vue;createApp(App).mount(#app)1.2 App.vue 其中要写三种标签 <template> <!--html--> </template>…...

在四层代理中还原真实客户端ngx_stream_realip_module

一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡&#xff08;如 HAProxy、AWS NLB、阿里 SLB&#xff09;发起上游连接时&#xff0c;将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后&#xff0c;ngx_stream_realip_module 从中提取原始信息…...

[Java恶补day16] 238.除自身以外数组的乘积

给你一个整数数组 nums&#xff0c;返回 数组 answer &#xff0c;其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法&#xff0c;且在 O(n) 时间复杂度…...

【HarmonyOS 5 开发速记】如何获取用户信息(头像/昵称/手机号)

1.获取 authorizationCode&#xff1a; 2.利用 authorizationCode 获取 accessToken&#xff1a;文档中心 3.获取手机&#xff1a;文档中心 4.获取昵称头像&#xff1a;文档中心 首先创建 request 若要获取手机号&#xff0c;scope必填 phone&#xff0c;permissions 必填 …...

Mobile ALOHA全身模仿学习

一、题目 Mobile ALOHA&#xff1a;通过低成本全身远程操作学习双手移动操作 传统模仿学习&#xff08;Imitation Learning&#xff09;缺点&#xff1a;聚焦与桌面操作&#xff0c;缺乏通用任务所需的移动性和灵活性 本论文优点&#xff1a;&#xff08;1&#xff09;在ALOHA…...

SiFli 52把Imagie图片,Font字体资源放在指定位置,编译成指定img.bin和font.bin的问题

分区配置 (ptab.json) img 属性介绍&#xff1a; img 属性指定分区存放的 image 名称&#xff0c;指定的 image 名称必须是当前工程生成的 binary 。 如果 binary 有多个文件&#xff0c;则以 proj_name:binary_name 格式指定文件名&#xff0c; proj_name 为工程 名&…...