文章目录
- **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>-x86
或x64
安装包。
-
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. 创建服务器组(可选):
- 右键
Servers
→Create
→Server Group
。
4. 添加服务器:
-
右键目标服务器组 →
Create
→Server
。 -
General 选项卡:
- Name:自定义服务器名称(如
My_PostgreSQL
)。
- Name:自定义服务器名称(如
-
Connection 选项卡:
- Hostname/Address:数据库服务器 IP 地址(如
192.168.65.135
)。 - Port:默认
5432
。 - Maintenance database:默认
postgres
。 - Username:数据库用户名(如
postgres
)。 - Password:用户密码(如
"Tony9999"
)。
- Hostname/Address:数据库服务器 IP 地址(如
-
点击
Save
保存配置。
2.2 连接成功验证
- 左侧树形视图会显示新添加的服务器及数据库结构。
- 如果连接失败,检查:
- PostgreSQL 服务是否启动。
- 防火墙是否开放
5432
端口。 - 用户名、密码是否正确。
3. 基本操作
3.1 数据库管理
1. 创建数据库:
-
右键目标服务器 →
Create
→Database
。
-
输入数据库名称(如
test_db
),点击Save
。
2. 创建表空间:
- 右键数据库 →
Create
→Tablespace
。
3. 创建角色:
- 右键服务器 →
Create
→Role
。
3.2 表操作
1. 创建表:
-
展开数据库 →
Schemas
→Tables
→Create
→Table
。
-
配置字段名、数据类型、约束等。
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 代码的作用是:
- 如果存在
public.students
表,则删除它。 - 创建一个新的
public.students
表,包含以下列:student_id
:唯一标识学生的uuid
类型主键。student_name
:最大长度为 50 的字符串,且不能为空。
- 将表的所有权授予用户
your_db_user
。
注意事项
-
uuid
类型的使用uuid
通常需要配合函数(如uuid_generate_v4()
)生成唯一值。- 如果未指定默认值,插入数据时需要手动提供
uuid
值。
-
COLLATE
的作用- 如果数据库的默认排序规则(如
en_US.UTF-8
)与需求不一致,可以在此处显式指定。
- 如果数据库的默认排序规则(如
-
所有权变更
- 需要确保
your_db_user
用户已存在,并且执行该 SQL 的用户有权限修改表所有权。
- 需要确保
-
表空间
- 如果数据库有多个表空间,可以根据需求修改
TABLESPACE
的值。默认情况下,pg_default
是合理的。
- 如果数据库有多个表空间,可以根据需求修改
- Statistics:查看对象的统计信息。
- Dependencies/Dependents:查看对象依赖关系。
4. 高级功能
4.1 多语言支持
- 切换语言:
-
点击右上角菜单 →
Preferences
→Browser
→Language
。
-
支持简体中文等语言。
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:优化临时表事务处理。