PostgreSQL基本使用

参考文档:PostgreSQL基本使用与数据备份_postgresql 数据备份-CSDN博客

一、数据库的操作

1. 本机登录

2.创建新用户来访问 PostgreSQL

3 重启数据库服务

4.创建数据库并查看数据库

5.连接数据并删除数据库

6.建表插入数据,查看数据库下所有的表,查看表结构

二、PostgreSQL 管理

  1. 配置文件介绍

PostgreSQL 使用环境变量 PGDATA 指向的目录做为数据存放的目录。这个目录是在安装时指定的,所以在安装时需要指定一个合适的目录作为数据目录的根目录,而且,每一个 PG 数据库实例都需要有这样的一个目录。此数据目录的初始化是使用命令 initdb 来完成的。初始化完成后, PGDATA 数据目录下就会生成三个配置文件

postgresql.conf:数据库实例的主配置文件,基本上所有的配置参数都在此文件中

pg_hba.conf:认证配置文件,配置了允许哪些IP的主机访问数据库,认证的方法是什么等信息

pg_ident.conf:认证方式ident的用户映射文件

  1. 数据库相关概念

2.1 数据库的结构组织

在一个 PostgreSQL 数据库系统中,数据的组织结构可以分为以下五层:

实例: 一个 PostgreSQL 对应一个安装的数据目录$PGDATA,即一个instance实例

数据库:一个 PostgreSQL 数据库服务下可以管理多个数据库,当应用连接到一个数据库时,一般只能访问这个数据库中的数据,而不能访问其他数据库中的内容默认情况下初始实例只有三个数据库: postgres、template0、template1

模式:一个数据库可以创建多个不同的名称空间即 Schema,用于分隔不同的业务数据

表和索引:一个数据库可以有多个表和索引。在 PostgreSQL 中表的术语称为 Relation,而在其他数据库中通常叫Table

行和列:每张表中有很多列和行数据。在 PostgreSQL 中行的术语一般为"Tuple",而在其他数据库中则叫"Row"

2.2 PostgreSQL 中的术语

PostgreSQL 有一些术语与其他数据库中不一样,了解了这些术语的意思,就能更好地看懂PostgreSQL 中的文档。与其他数据库不同的术语如下:

Relation:表示表table或索引index,具体表示的是Table还是 Index需要看具体情况

Tuple:表示表中的行,在其他数据库中使用Row来表示

Segment:每个表和索引都单独对应一个文件,,即为segment,如果文件大小超过1GB,会创建多个相同名称但后缀不同的文件

Page:表示在磁盘中的数据块。在文件中以块为单位存放数据, 默认值为8KB,最大可以为32KB

Buffer:表示在内存中的数据块

2.3 模版数据库template0 和template1

template1 和 template0 是 PostgreSQL 的模板数据库。所谓模板数据库就是创建新 database 时,PostgreSQL 会基于模板数据库制作一份副本,其中会包含所有的数据库设置和数据文件。

PostgreSQL安装好以后会默认附带两个模板数据库: 默认模板库为 template0 和template1。默认模板库为 template1,也可以指定template0

template1 和t emplate0 的区别主要有两点:

template1 可以连接,template0 不可以连接

使用 template1 模板库建库时不可指定新的encoding 和locale,而 template0可以

注意:template0和template1都不能被删除。

相关推荐
SelectDB1 小时前
为什么 JSON 正在成为分析数据库新的竞争点?
数据库·json·agent
ClouGence2 小时前
开源数据库管理工具 CloudDM 4.2.0 发布,新增 GoldenDB、KingbaseES 等数据源
数据库·dba·devops
发霉的馒头2 小时前
ORA-00845: MEMORY_TARGET not supported on this system的解决方法
数据库
草莓熊Lotso5 小时前
【Redis 初阶】Set 类型深度解析:去重集合的运算能力与实战场景
linux·网络·数据库·windows·redis·tcp/ip·缓存
煎饼皮皮侠6 小时前
【设计】设计一个web版的数据库管理平台后端(之五) --借鉴mybatis
数据库·mybatis
东风破_12 小时前
danci 2:创建的单词书到底存在哪里?从 Supabase 一路理解 ORM、Drizzle 和 RLS
数据库·后端·node.js
橙子家14 小时前
OSS 文件上传的几个风险点和解决方案
数据库
2601_9620664915 小时前
【Sql Server】Update中的From语句,以及常见更新操作方式
android·java·数据库
愤怒的苹果ext16 小时前
MySQL Shell备份恢复数据库
数据库·mysql·备份恢复·mysqlsh
数字新视界18 小时前
DCIM管理系统的技术架构与部署模式详解
数据库·物联网·数据中心·数据中心基础设施管理·dcim管理系统