PostgreSQL
1.基本的架構:
the basic PostgreSQL system architecture:a client/server mode
A server process
The user's client
they communicate over a TCP/IP network connection.
2.基本概念
database TABLE rows psql
1. 安裝完postgresql後,我們發現它自帶了3個資料庫。postgres、template0、template1。1 資料庫作為 PostgreSQL 提供的預設資料庫,主要用作初始連線點以及執行系統級別的管理和查詢任務
初始化資料庫後預設的表空間有pg_default、pg_global
2.PostgreSQL中的所有資料庫物件都由各自的物件識別符號(oid)在內部管理
幾張系統表:pg_class、pg_attrubute、information_schema.columns
information_schema.columns 是 PostgreSQL 中的系統檢視之一,它儲存了資料庫中所有表的列資訊
3.
PostGIS是最著名的一個開源GIS系統,它是PostgreSQL中的一個外掛
3.基本內容和命令
基本情況。
1.安裝位置和配置檔案
PostgreSQL的主要配置檔案是
postgresql.conf,它通常位於PostgreSQL資料目錄中,例如/var/lib/postgresql/data
PostgreSQL 服務監聽的埠,預設是 5432
pg_hba.conf 是 PostgreSQL 資料庫的一個重要配置檔案,用於控制客戶端對資料庫的訪問許可權
.pgpass 檔案是一種用於儲存 PostgreSQL 資料庫的使用者名稱和密碼的配置文
pgpass 並放在使用者的主目錄下,路徑通常是 ~/.pgpass。
2.程序
Postmaster 程序
WalWriter 程序這個程序負責將 WAL(Write-Ahead Logging)日誌從記憶體緩衝區寫入到磁碟,以確保資料永續性和一致性
ALWriter、Checkpointer 和 Background Writer 的協同工作
SELECT pid, usename, datname, query, state, query_start FROM pg_stat_activity;
4.幫助系統
src/tutorial/.
基本的-查詢 join等命令 Aggregate Functions
5.特別
1.PG中的繼承,繼承表,而表繼承可以完成的兩個功能 1 table partitioning 2 multi-tenancy
使用物件導向的思想來組織資料庫 Inheritance
2.在PostgreSQL中,擴充套件是一種可插拔的模組,允許使用者新增額外的功能或資料型別到資料庫中。擴充套件可以用於新增新的查詢型別、資料型別、函式、運算子、索引型別等
CREATE EXTENSION
3.支援非關係型資料的儲存,如KV儲存、JSON等格式的資料 PostgreSQL更適合處理複雜的查詢和分析型任務
6。國內的資料庫
阿里oceanbase
華為基於PostgreSQL的 OpenGauss 資料庫
騰訊TDSQL,基於mysql修改
PolarDB for PostgreSQL特性
處理大量的高併發寫入操作--mysql