PostgreSQL
父主題
資料庫
PostgreSQL 原始碼解讀(236)- 後臺程式#14(autovacuum程式#2)
本節簡單介紹了PostgreSQL的後臺程式:autovacuum,主要分析了launch_worker函式的實現邏輯。一、資料結構AutoVacuumShmem主要的autovacuum共享記憶體結

PostgreSQL DBA(139) - PG 12(B-tree index improvement 1#)
本節簡單介紹了PostgreSQL 12 B-tree的改進:索引出現很多重複值時提升效能,減少空間佔用。PG 11建立資料表,建立索引[local]:5110 [email protected]=# drop t

PostgreSQL DBA(138) - PG 13(Drop database force)
在PG 12或以下版本,刪除資料庫時如存在連線則無法刪除,PG 13提供了force選項,可終止相關連線直接刪除資料庫。PG 12建立資料庫並連線[[email protected] ~]$ created

PostgreSQL與Oracle的sql差異
1.rownum(1)Oracle分頁查詢使用rownum,PostgreSQL使用limit offsetOraclePostgreSQLselect * from (select rownum

PostgreSQL DBA(137) - PG 13(Allow invisible PROMPT2 in psql)
在PG 12或以下版本,psql通過配置PROMPT2區分同一個命令但有折行的情況,在PG 13中,通過設定%w可使SQL的所有行左對齊。PG 12[local:/data/pg12]:5432 pg

PostgreSQL DBA(136) - Develop(Common Mistakes)
本節簡單介紹了在PostgreSQL中容易出錯但又容易被忽略的細節。除法運算在整數和整數之間執行除法運算時,結果會是整數,但實際上我們希望保留小數位。[local:/data/pg12]:5432 p

postgresql10主從+keepalived高可用自動切換(切換關鍵在指令碼)
前言因為之前自己部落格已經寫過太多次的主從搭建了,這裡就不寫了,直接copy自己以前寫過的內容,後面加上keepalived高可用的重點內容!!!一、下載POSTGRESQL原始碼安裝包及主機配置 h

Oracle vs PostgreSQL DBA(22)- Oracle VPD#2
本節分三個場景分別介紹Oracle VPD的相關功能。測試用的資料表使用Oracle的示例Schema Scott中的emp和dept:[email protected]>de

PostgreSQL:原始碼目錄結構
原始碼結構aclocal.m4:config 用的檔案的一部分config/:config 用的檔案的目錄config.log:configure:configure 檔案configure.in:c

Oracle vs PostgreSQL DBA(21)- Oracle VPD
本節簡單介紹了Oracle VPD。VPD用於實現精細化的許可權管理。About Oracle Virtual Private DatabaseWhat?VPD的做法:VPD自動新增where子句到S

postgresql 9.6 分割槽表測試方案與記錄
postgresql 9 分割槽表測試一、 pg 9 準備分割槽表測試環境在測試環境建立好 pg 9 測試環境,連線到pg 9 例項上:/usr/local/pgsql101/bin/psql -h

PostgreSQL DBA(134) - Extension(auto_explain)
本文簡單介紹了PostgreSQL的外掛:auto_explain。該外掛自動explain SQL語句並把執行計劃列印在日誌檔案中。安裝編譯安裝[[email protected] auto_explai

PostgreSQL 入門
安裝、設定、建立和開始使用 PostgreSQL 資料庫。每個人或許都有需要在資料庫中儲存的東西。即使你執著於使用紙質檔案或電子檔案,它們也會變得很麻煩。紙質文件可能會丟失或混亂,你需要訪問的電子資訊

PostgreSQL DBA(133) - Extension(postgresql_anonymizer)
本文簡單介紹了PostgreSQL的外掛:postgresql_anonymizer 。該外掛利用PG的安全機制,可用於對隱私資料進行“動態”脫敏。安裝依賴tsm_system_rows和ddlx兩個

PostgreSQL DBA(132) - pgAdmin(unix_socket_directories)
本節簡單介紹了PostgreSQL資料庫啟動時socket儲存的目錄的配置,其對應的引數為unix_socket_directories。unix_socket_directories引數預設為/tm

PostgreSQL DBA(131) - Develop(numeric vs float vs int)
本文簡單介紹了PostgreSQL中不同資料型別對查詢效能的影響,包括numeric、float、smallint、int和boolean。容量資料列佔用空間大小[local]:5432 [email protected]

PostgreSQL DBA(130) - Extension(pgsql-gzip)
本文簡單介紹了PostgreSQL的外掛:pgsql-gzip。該外掛可用於對列進行加密和解密。安裝clone程式碼,編譯安裝[[email protected] contrib]$ git clone h

PostgreSQL DBA(129) - Extension(pg_variables).md
本文簡單介紹了PostgreSQL的外掛:pg_variables。該外掛可用於定義變數,在建立類似Oracle的package等場景時用於宣告變數。安裝使用git下載原始碼,編譯安裝[[email protected]

使用 Mux, Go, PostgreSQL, GORM 構建 API
本文以不到百行程式碼,演示從表自動建立,mux路由分發,Gorm增刪改查,httpie測試API全流程作業。基本思路Gorm 通過資料庫連線自動在postgres上建表mux 負責註冊Handler,

PostgreSQL DBA(128) - pgAdmin(Load balance with HAProxy)
本文簡單介紹了在流複製主備環境下如何使用HAProxy搭建負載均衡環境。安裝使用yum安裝相關軟體,在資料庫伺服器上安裝xinted和telnetyum -y install xinetd telne

PostgreSQL DBA(127) - Develop(JDBC failover&load balance)
PostgreSQL JDBC Driver在驅動層面提供了資料庫的Failover和Load balance,相關的引數包括:targetServerType = StringAllows open

PostgreSQL DBA(126) - PG 12(搭建流複製)
本節簡單介紹了PostgreSQL 12搭建流複製的過程。PG 12把recovery.conf廢掉了,與PG 11略有不同,但大同小異。主庫建立複製使用者[[email protected] pg120d

PostgreSQL DBA(124) - Develop(Putting multiple LIKE patterns into an array)
本節簡單介紹了PostgreSQL中的Putting multiple LIKE patterns into an array特性。LIKE用於模糊查詢,如select from tablename

PostgreSQL DBA(123) - 列式儲存zedstore再體驗
本節簡單介紹了Greenplum開源的列式儲存zedstore的安裝和使用.安裝從Github上下載原始碼,與普通PG一樣,編譯安裝即可[[email protected] postgres-zedstor

PostgreSQL DBA(122) - Develop(EDB package)
本節簡單介紹了edb中的package。建立package相容Oracle語法create or replace package pk_demoas var_pk_demo_1 number; f

PostgreSQL DBA(121) - pgAdmin(HA:PAF vs repmgr vs Patroni)
本節簡單介紹了PostgreSQL HA三種解決方案PAF(PostgreSQL Automatic Failover)、repmgr和Patroni的Pros(優勢)和Cons(劣勢)。PAFPAF

PostgreSQL VFD機制
1、結構體VFD機制中由結構體struct vfd來維護。其中各個成員變數的意義如下表所示:fdvfd實際對應的物理檔案檔案描述符fdstateFD_DELETE_AT_CLOSE:表示檔案在關閉時需

PostgreSQL DBA(120) - pgAdmin(HA with Patroni)
本節簡單介紹了PostgreSQL HA with Patroni的架構,並對DCS等做了簡單的描述。PostgreSQL HA with Patroni的架構比較好理解,大體由以下三部分組成:1.P

PostgreSQL DBA(119) - pgAdmin(LIMIT:Index Scan vs Bitmap Index Scan)
在PostgreSQL中,如使用limit,但執行計劃中使用了Bitmap Index Scan,則需要引起注意,可能PG計算成本時認為Bitmap Index Scan比Index Scan或者Se

Oracle vs PostgreSQL Develop(20) - Materialized View
Oracle和PostgreSQL都提供了物化檢視,但Oracle的功能顯然比PostgreSQL要強大不少,特別是查詢重寫query rewrite功能。Oracle建立資料表和物化檢視日誌,插入資