pgAdmin介绍(PostgreSQL数据库管理软件)数据库客户端、PG客户端、PostgreSQL客户端

文章目录

  • **1. 安装 pgAdmin**
    • **1.1 下载**
    • **1.2 安装步骤(以 Windows 为例)**
      • 1. **运行安装程序**:双击下载的 `.exe` 文件。
      • 2. **接受协议**:点击 `Next`,勾选 `I accept the agreement`。
      • 3. **选择安装路径**:默认路径为 `C:\Program Files\pgAdmin 4`,可自定义。
      • 4. **创建快捷方式**:选择是否在开始菜单创建快捷方式(如 `pgAdmin4` 文件夹)。
      • 5. **设置主密码**:(没看见这步!)
      • 6. **完成安装**:点击 `Install`,等待安装完成后点击 `Finish`。
  • **2. 配置与连接数据库**
    • **2.1 添加服务器**
      • 1. **打开 pgAdmin**:通过桌面快捷方式或开始菜单启动。
      • 2. **设置主密码**:首次登录时输入主密码。(没找到!)
      • 3. **创建服务器组**(可选):
      • 4. **添加服务器**:
    • **2.2 连接成功验证**
      • - 左侧树形视图会显示新添加的服务器及数据库结构。
      • - 如果连接失败,检查:
  • **3. 基本操作**
    • **3.1 数据库管理**
      • 1. **创建数据库**:
      • 2. **创建[表空间](https://dontla.blog.csdn.net/article/details/150997006)**:
      • 3. **创建角色**:
    • **3.2 表操作**
      • 1. **创建表**:
      • 2. **编辑表**:
      • 3. **删除表**:
    • **3.3 SQL 查询**
      • 1. **打开查询工具**:
      • 2. **执行 SQL**:
    • **3.4 查看对象信息**
      • - **Dashboard**:显示数据库概览。
      • - **Properties**:查看或编辑对象配置。
      • - **SQL**:生成创建对象的 DDL 语句。
        • 代码和解释
          • **1. 注释部分**
          • **2. 创建表的语句**
          • **3. 修改表所有权**
          • **总结**
          • **注意事项**
      • - **Statistics**:查看对象的统计信息。
      • - **Dependencies/Dependents**:查看对象依赖关系。
  • **4. 高级功能**
    • **4.1 多语言支持**
      • - **切换语言**:
    • **4.2 安全策略**(不太懂是啥)
      • - **Security Invoker**:支持在创建视图时设置权限控制策略(需版本支持)。
      • - **临时表事务处理**:优化临时表的事务机制(参考 v7.4 版本更新)。
    • **4.3 第三方工具集成**
      • - **Dell Security Management Server**:
  • **5. 常见问题**
    • **5.1 连接失败**
      • - **原因**:防火墙阻拦、PostgreSQL 服务未启动、密码错误。
      • - **解决方法**:
    • **5.2 主密码忘记**(没找到密码功能!)
      • - **解决方法**:
  • **6. 参考资料**
      • - **官方文档**:[https://www.pgadmin.org/docs](https://www.pgadmin.org/docs)
      • - **版本更新说明**:
      • - **社区支持**:[https://www.postgresql.org](https://www.postgresql.org)

以下是 pgAdmin 的使用说明,涵盖安装、配置、连接数据库、基本操作等内容:


1. 安装 pgAdmin

1.1 下载

  • 官网地址:https://www.pgadmin.org
  • 选择版本
    • Windows:选择 pgAdmin4-<version>-x86x64 安装包。
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述

    • Linux/macOS:通过包管理器安装或下载源码编译。

1.2 安装步骤(以 Windows 为例)

1. 运行安装程序:双击下载的 .exe 文件。

2. 接受协议:点击 Next,勾选 I accept the agreement

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

3. 选择安装路径:默认路径为 C:\Program Files\pgAdmin 4,可自定义。

在这里插入图片描述

4. 创建快捷方式:选择是否在开始菜单创建快捷方式(如 pgAdmin4 文件夹)。

在这里插入图片描述

5. 设置主密码:(没看见这步!)

  • 首次启动时需设置主密码(用于加密存储数据库连接信息)。
  • 示例:"1234qwert"(需自行设置并记住)。

6. 完成安装:点击 Install,等待安装完成后点击 Finish

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


2. 配置与连接数据库

2.1 添加服务器

1. 打开 pgAdmin:通过桌面快捷方式或开始菜单启动。

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

2. 设置主密码:首次登录时输入主密码。(没找到!)

3. 创建服务器组(可选):

  • 右键 ServersCreateServer Group

4. 添加服务器

  • 右键目标服务器组 → CreateServer

  • General 选项卡:

    • Name:自定义服务器名称(如 My_PostgreSQL)。
      在这里插入图片描述
  • Connection 选项卡:

    • Hostname/Address:数据库服务器 IP 地址(如 192.168.65.135)。
    • Port:默认 5432
    • Maintenance database:默认 postgres
    • Username:数据库用户名(如 postgres)。
    • Password:用户密码(如 "Tony9999")。
  • 点击 Save 保存配置。
    在这里插入图片描述

2.2 连接成功验证

在这里插入图片描述

- 左侧树形视图会显示新添加的服务器及数据库结构。

- 如果连接失败,检查:

  • PostgreSQL 服务是否启动。
  • 防火墙是否开放 5432 端口。
  • 用户名、密码是否正确。

3. 基本操作

3.1 数据库管理

1. 创建数据库

  • 右键目标服务器 → CreateDatabase
    在这里插入图片描述

  • 输入数据库名称(如 test_db),点击 Save
    在这里插入图片描述
    在这里插入图片描述

2. 创建表空间

  • 右键数据库 → CreateTablespace
    在这里插入图片描述

3. 创建角色

  • 右键服务器 → CreateRole
    在这里插入图片描述

3.2 表操作

1. 创建表

  • 展开数据库 → SchemasTablesCreateTable
    在这里插入图片描述

  • 配置字段名、数据类型、约束等。
    在这里插入图片描述
    在这里插入图片描述

2. 编辑表

  • 右键目标表 → Properties,修改字段或约束。
    在这里插入图片描述

3. 删除表

  • 右键目标表 → Delete/Drop
    在这里插入图片描述

3.3 SQL 查询

1. 打开查询工具

  • 右键目标数据库 → Query Tool
    在这里插入图片描述

  • 或点击顶部菜单栏的 Query Tool 按钮。
    在这里插入图片描述

2. 执行 SQL

  • 输入 SQL 语句(如 SELECT * FROM test_table;)。
    Try:

    SELECT * FROM students;
    
  • 点击 Execute/Explain Plan(F5)运行。
    在这里插入图片描述

  • 使用 Explain(F7)查看执行计划,Explain Analyze(Shift+F7)获取详细分析。
    在这里插入图片描述
    在这里插入图片描述

3.4 查看对象信息

- Dashboard:显示数据库概览。

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

- Properties:查看或编辑对象配置。

在这里插入图片描述

- SQL:生成创建对象的 DDL 语句。

在这里插入图片描述

代码和解释
-- Table: public.students-- DROP TABLE IF EXISTS public.students;CREATE TABLE IF NOT EXISTS public.students
(student_id uuid NOT NULL,student_name character varying(50) COLLATE pg_catalog."default" NOT NULL,CONSTRAINT students_pkey PRIMARY KEY (student_id)
)TABLESPACE pg_default;ALTER TABLE IF EXISTS public.studentsOWNER to your_db_user;

以下是这段 PostgreSQL SQL 代码的逐句解释:


1. 注释部分
-- Table: public.students
-- DROP TABLE IF EXISTS public.students;
  • -- 是 SQL 的注释符号,表示该行是注释,不会被执行。
  • 第一行注释说明这是一个名为 public.students 的表。
  • 第二行是 删除表的语句,表示如果存在名为 public.students 的表,则删除它。
    • 作用:避免重复创建表时报错(如果表已经存在)。

2. 创建表的语句
CREATE TABLE IF NOT EXISTS public.students
(student_id uuid NOT NULL,student_name character varying(50) COLLATE pg_catalog."default" NOT NULL,CONSTRAINT students_pkey PRIMARY KEY (student_id)
)
  • CREATE TABLE IF NOT EXISTS public.students
    如果 public.students 表不存在,则创建它。

    • public 是数据库的 schema 名称(模式),表示表属于 public 模式。
    • students 是表名。
  • 表结构定义

    • student_id uuid NOT NULL
      • student_id 是表的一列,数据类型为 uuid(通用唯一标识符),且该列不允许为空(NOT NULL)。
      • uuid 是一种全局唯一标识符(如 a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11),通常用于分布式系统中避免主键冲突。
    • student_name character varying(50) COLLATE pg_catalog."default" NOT NULL
      • student_name 是表的一列,数据类型为 character varying(50)(即最大长度为 50 的可变长度字符串)。
      • COLLATE pg_catalog."default" 指定该列的字符排序规则为数据库默认的排序规则(用于排序和比较字符串)。
      • NOT NULL 表示该列不允许为空值。
    • CONSTRAINT students_pkey PRIMARY KEY (student_id)
      • 定义一个名为 students_pkey 的主键约束,主键为 student_id 列。
      • 主键的作用是唯一标识表中的每一行,且主键列的值必须唯一且非空。
  • 表空间指定

    TABLESPACE pg_default;
    
    • TABLESPACE pg_default 指定该表存储在默认的表空间(pg_default)中。
    • 表空间是 PostgreSQL 中用于管理存储位置的逻辑容器,通常不需要特别配置。

3. 修改表所有权
ALTER TABLE IF EXISTS public.studentsOWNER to your_db_user;
  • ALTER TABLE IF EXISTS public.students
    如果 public.students 表存在,则修改其属性。
  • OWNER to your_db_user
    将表的所有权更改为 your_db_user 用户。
    • your_db_user 是数据库中的一个用户(需要提前创建)。
    • 所有权变更后,your_db_user 用户对该表具有完全的控制权限(如增删改查、修改结构等)。

总结

这段 SQL 代码的作用是:

  1. 如果存在 public.students 表,则删除它。
  2. 创建一个新的 public.students 表,包含以下列:
    • student_id:唯一标识学生的 uuid 类型主键。
    • student_name:最大长度为 50 的字符串,且不能为空。
  3. 将表的所有权授予用户 your_db_user

注意事项
  1. uuid 类型的使用

    • uuid 通常需要配合函数(如 uuid_generate_v4())生成唯一值。
    • 如果未指定默认值,插入数据时需要手动提供 uuid 值。
  2. COLLATE 的作用

    • 如果数据库的默认排序规则(如 en_US.UTF-8)与需求不一致,可以在此处显式指定。
  3. 所有权变更

    • 需要确保 your_db_user 用户已存在,并且执行该 SQL 的用户有权限修改表所有权。
  4. 表空间

    • 如果数据库有多个表空间,可以根据需求修改 TABLESPACE 的值。默认情况下,pg_default 是合理的。

- Statistics:查看对象的统计信息。

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

- Dependencies/Dependents:查看对象依赖关系。

在这里插入图片描述


4. 高级功能

4.1 多语言支持

- 切换语言

  • 点击右上角菜单 → PreferencesBrowserLanguage
    在这里插入图片描述
    在这里插入图片描述

  • 支持简体中文等语言。
    在这里插入图片描述

4.2 安全策略(不太懂是啥)

- Security Invoker:支持在创建视图时设置权限控制策略(需版本支持)。

- 临时表事务处理:优化临时表的事务机制(参考 v7.4 版本更新)。

4.3 第三方工具集成

- Dell Security Management Server

  • 需在 Dell 控制台启用远程访问。
  • 使用 ddp_admin 用户名连接数据库(参考 Dell 配置示例)。

5. 常见问题

5.1 连接失败

- 原因:防火墙阻拦、PostgreSQL 服务未启动、密码错误。

- 解决方法

  • 检查 PostgreSQL 服务状态。
  • 确认 pg_hba.conf 允许远程连接。
  • 重置密码:通过命令行修改 postgres 用户密码。

5.2 主密码忘记(没找到密码功能!)

- 解决方法

  • 修改 pgadmin4.db 中的密码(需手动操作,风险较高)。
  • 重装 pgAdmin 并重新配置。

6. 参考资料

- 官方文档https://www.pgadmin.org/docs

- 版本更新说明

  • v7.4:修复对象资源管理器崩溃问题。
  • v6.18:优化临时表事务处理。

- 社区支持https://www.postgresql.org


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

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

相关文章

桌面GIS软件FlatGeobuf转Shapefile代码分享

桌面GIS软件FlatGeobuf转Shapefile代码分享1、后端代码分享2、前端代码分享分享完成

【Bluedroid】A2DP Source 音频传输停止流程及资源管理机制(btif_a2dp_source_stop_audio_req)

本文深入剖析Android蓝牙协议栈中A2DP音频传输停止流程,涵盖从用户请求触发、工作线程调度、资源释放到性能统计的全链路实现。通过分析btif_a2dp_source_stop_audio_req到btif_a2dp_source_audio_tx_stop_event的代码执行路径,揭示多线程环境下的竞争规避策略、硬件抽象层(H…

1-ruby介绍、环境搭建、运行 hello world 程序

1-ruby介绍、环境搭建、运行 hello world 程序 Ruby 简介 Ruby 是一种开源的、面向对象的、解释型的动态编程语言&#xff0c;由 Yukihiro “Matz” Matsumoto 于 1995 年发布。主要特点包括&#xff1a; 纯面向对象&#xff1a;所有东西都是对象动态类型&#xff1a;变量不…

PPO、DPO和GRPO的区别

一、 核心思想一句话概括 首先&#xff0c;我们用三个比喻来快速理解它们的核心思想&#xff1a;PPO (近端策略优化)&#xff1a; 「比武招亲」 模型&#xff08;AI&#xff09;通过试错和与裁判&#xff08;奖励模型&#xff09;的互动来学习。它生成多个回答&#xff0c;裁判…

使用组合子构建抽象语法树

引言 组合子&#xff08;Combinator&#xff09;是一种函数式编程中的概念&#xff0c;它允许我们通过组合简单的函数来构建复杂的逻辑。在解析器和抽象语法树&#xff08;AST&#xff09;的构建中&#xff0c;组合子提供了一种简洁且模块化的方法。本文将介绍如何使用组合子来…

20.27《24GB显卡轻松训练ChatGLM3-6B!QLoRA极速微调实战指南》

24GB显卡轻松训练ChatGLM3-6B!QLoRA极速微调实战指南 import torch from transformers import AutoModel, AutoTokenizer, BitsAndBytesConfig# 配置4-bit量化参数 bnb_config = BitsAndBytesConfig(load_in_4bit=True,bnb_4bit_use_double_quant=True

JSP 输出语法全面解析

JSP 输出语法全面解析 JSP 提供了多种输出内容到响应流的方式&#xff0c;每种方式都有其特定的使用场景和特点。以下是 JSP 输出语法的详细解析。 总结 JSP直接编写普通字符串 翻译到service方法的out.write(“这里面”) <%%> 翻译到service方法体内部&#xff0c;里面是…

前端学习——CSS

前面我们已经学习过来HTML。但是对于前端网页来说&#xff0c;HTML只是网页的骨架。而只是使用HTML的网页是十分简陋的&#xff0c;一般没办法应用于实际应用。因此我们还要学习CSS对网页进行美化。 相关代码已经上传至gitee&#xff1a;前端学习代码: 前端学习&#xff0c;喜欢…

【stm32】对射式红外传感器计次以及旋转编码器计次

对射式红外传感器计次 1. 将传感器的功能分装在一个模块里CountsSenser2.配置外部中断1.配置RCC&#xff0c;将涉及的外设的时钟都打开 2.配置GPIO&#xff0c;选择端口为输入模式 3.配置AFIO&#xff0c;选择前面使用的一路GPIO,连接到后面的EXTI 4.配置EXTI&#xff0c;选择边…

人工智能学习:Python相关面试题

1、Python与其他语言&#xff08;如Java/C&#xff09;的核心区别是什么&#xff1f;Python是动态类型的解释型语言&#xff0c;语法简洁&#xff0c;支持多种编程范式&#xff08;面向对象、函数式、过程式&#xff09;。与Java相比&#xff0c; Python无需编译且语法更简洁&a…

【Canvas与旗帜】哥伦比亚旗圆饼

【成图】【代码】<!DOCTYPE html> <html lang"utf-8"> <meta http-equiv"Content-Type" content"text/html; charsetutf-8"/> <head><title>哥伦比亚旗圆饼 Draft1</title><style type"text/css&qu…

Linux 系统 poll 与 epoll 机制2:实现原理与应用实践

接上文poll机制&#xff1a;Linux 系统 poll 与 epoll 机制1。 3. epoll 机制&#xff1a;高并发 I/O 的优化实现​ epoll(Efficient event polling implementation)机制诞生于 Linux 2.5.44 版本&#xff0c;是内核为解决高并发 I/O 场景&#xff08;如万级以上 FD 监听&…

Mamba LLM 架构简介:机器学习的新范式

Mamba LLM 架构简介&#xff1a;机器学习的新范式探索 Mamba LLM 的强大功能&#xff0c;Mamba LLM 是来自一流大学的变革性架构&#xff0c;重新定义了 AI 中的序列处理。语言模型是一种经过训练的机器学习模型&#xff0c;用于在自然语言上执行概率分布。它们的架构主要由多层…

GaussDB生产扩容引起的PANIC问题处理案例

1 环境信息CPU:8C内存&#xff1a;64GGaussDB版本&#xff1a;24.7.32解决方案部署形态&#xff1a;HCS部署形态&#xff1a;1主1从1日志扩容原因&#xff1a;当前的配置满足不了max_connections为2000值&#xff0c;即当前的业务最大连接数超过2000个而按照8C64G的配置最多满足…

【168页PPT】华为流程管理体系构建与落地(附下载方式)

篇幅所限&#xff0c;本文只提供部分资料内容&#xff0c;完整资料请看下面链接 https://download.csdn.net/download/2501_92796370/91662548 资料解读&#xff1a;【168页PPT】华为流程管理体系构建与落地 详细资料请看本解读文章的最后内容。华为&#xff0c;作为全球知名…

基于CotSegNet网络和机器学习的棉花点云器官分割和表型信息提取

一、引言PointNet作为点云处理领域的先驱与里程碑式深度学习模型&#xff0c;以其卓越的性能和对无序点云数据直接处理的能力而闻名。博主将分享1篇发表在《Computers and Electronics in Agriculture》&#xff08;中科院1区TOP&#xff09;的“Organ segmentation and phenot…

经典卷积神经网络CNN

一、CNN视觉处理三大任务&#xff1a;图像分类、目标检测、图像分割上游&#xff1a;提取特征&#xff0c;CNN下游&#xff1a;分类、目标、分割等&#xff0c;具体的业务1. 概述卷积神经网络是深度学习在计算机视觉领域的突破性成果。在计算机视觉领域, 往往我们输入的图像都很…

11.1.5 实现文件删除,共享和共享下载排行榜

1、图床分享图片api_sharepicture.cc sharepicture_cgi.c 分享后每个人都可以看到。 数据库&#xff1a; DROP TABLE IF EXISTS share_picture_list; CREATE TABLE share_picture_list (id int(11) NOT NULL AUTO_INCREMENT COMMENT 编号,user varchar(32) NOT NULL COMMENT …

【Java后端】SpringBoot配置多个环境(开发、测试、生产)

在 Spring Boot 中配置多个环境&#xff08;开发、测试、生产&#xff09;通常用 配置文件分环境管理 启动参数切换 的方式来实现。下面一个完整的实践指南&#xff1a;&#x1f539; 1. 使用多配置文件管理环境 Spring Boot 默认支持 application-{profile}.properties 或 ap…

HTTP 分块传输编码:深度解析与报文精髓

分块传输编码&#xff08;Chunked Transfer Encoding&#xff09;是 HTTP/1.1 协议中的一项核心特性&#xff0c;它允许服务器在不预先知道响应体总大小的情况下&#xff0c;高效地传输数据。这项技术解决了传统 Content-Length 机制的局限性&#xff0c;使得 HTTP 协议能够完美…