資料庫_SQL-PostgreSQL

辰令發表於2024-07-14

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

相關文章