MathJax

MathJax-2

MathJax-3

Google Code Prettify

置頂入手筆記

EnterproseDB Quickstart — 快速入門筆記

由於考慮採用 EnterpriseDB 或是直接用 PostgreSQL 的人,通常需要一些入手的資料。這邊紀錄便提供相關快速上手的簡單筆記 ~ 這篇筆記以 資料庫安裝完畢後的快速使用 為目標,基本紀錄登入使用的範例:

顯示具有 PostgreSQL企業版 標籤的文章。 顯示所有文章
顯示具有 PostgreSQL企業版 標籤的文章。 顯示所有文章

2025年3月5日 星期三

Barman 3.10.0 的 Python debug 小旅行

最近測試 EDB 資料庫搭配 Barman 備份功能,以為怪怪的又讓我挖到 bug

就努力試了一下 Python debug 工具追蹤一下 Barman 其中步驟的運作

在仔細對照釐清後,看起來是我眼睛業障重~

這篇筆記紀錄一下下這個小旅程。

2022年7月12日 星期二

EDB14.4 新功能:針對表格作 CRUD 稽核 (table-level auditing)

不少公司會要求相當程度重要性的軟體系統要在資料庫設定活動稽核紀錄(Audit Logging)以備意外發生時保留可追蹤的依據。不過稽核日誌通常會紀錄「一大堆」的活動,有時候會讓人困擾要怎麼收納。

不過在資料庫裡面,有時候不見得要全部活動都紀錄,而只要針對重要資料的活動作紀錄就可以了。

在 Oracle 內有 table-level auditing(上網查好像叫做 DBA_AUDIT_TRAIL package 還是 Fine-Grained Auditing 的樣子。。?)可以針對指定表格的存取作稽核紀錄。不過 EDB/PGSQL 過往都不太便於設置指定表格作稽核紀錄的設置。

不過在 EDB 14 開始,也支援類比功能~不過實作機制沒有模仿 Oracle,但其實設定上還蠻簡單的。

這邊就做一點紀錄。

2021年9月10日 星期五

初步認識 EDB Postgres 的 K8s 容器化解決方案 — Cloud Native PostgreSQL Operator

基於上一篇筆記所找到的好心測試 K8s 工具,這邊要來嘗試 EDB Postgres 的 PostgreSQL 容器化方案 — Cloud Native PostgreSQL Operator。

在前一陣子 EDB 曾經在 K8s/Openshift 平台還沒變成壓倒性主流容器平台方案時,就已經提供 Docker Container 的資料庫解決方案,當時也做了一點點練習(筆記在這)。

不過當時得努力的搞清楚最原生的 K8s YAML 設置,其實很複雜。。。

隨著 K8s 整體的推進,出現了 HelmOperator 這類「套件管理」的工具,加上 K8s 強化 Stateful Container 的支援,資料庫陸陸續續也可以輕易登陸 K8s 平台。

EDB 團隊基於這些變化,加上原 2ndQ 團隊的一同合作,便推出這個成熟的 K8s 解決方案。

這邊就要來初步體驗一下~

2021年1月30日 星期六

PGSQL 9.x 之後的交易流水帳 WAL 的管理變化—從 v9.4 到 v13

傳統的關聯式資料庫為了的設計上,大多有所謂的 Transaction Log (Tx Log) 的機制設計,將資料庫活動一五一十的記錄下來(優先於表格資料的實際回存到磁碟),以確保資料的高規格保全要求。
Transaction Log 通常稱作交易日誌,不過為了避免跟一般錯誤紀錄 Log 混淆,以下稱作交易紀錄流水帳。
在 PGSQL 與 EDB/PGSQL 企業版中,該機制稱為 Write-Ahead Logging,通常稱作 WAL。

這份筆記簡單紀錄 PGSQL 9.4 ~ PGSQL 13 的重要設定變化。

2021年1月2日 星期六

在 EDB13 安裝 tds_fdw 連通 Linux 上的 SQL Server XE

這邊不是用原生的 Postgres,而是使用 EDB 的企業版 Postgres 13。

PGSQL 在 PGDG Repo 裡面已經提供現成的 RPM 可以用了(可以載 https://tds-fdw.github.io/yum/tds_fdw.repo,或其實 PGDG 本身裡面就有提供了),因此不用擔心~

2020年6月14日 星期日

EnterpriseDB 的移轉輔助平台—EDB Migration Portal


EnterpriseDB 提供 Oracle 開發相容性的解決方案,讓使用者可以有一個機會,評估搬遷 Oracle 資料庫到 EDB Postgres 資料庫平台,適當的降低對 Oracle 資料庫的依賴。

搬遷資料庫有三個面向:
  • 資料庫內的物件搬遷/改寫:就是俗稱的 SQL DDL,如同程式碼的東西
  • 資料庫內的資料搬遷:當然~搬「資料」庫就是要搬資料ㄚ
  • 應用程式端的測試/改寫:這個情況比較複雜,有時有歷史包袱。要實際測試才能知道花費的力氣有多少

EDB 針對三點,各有解決方案
  • 資料庫內的物件:EDB 企業版具備 Oracle 開發相容性,以及移轉輔助平台 EDB Migration Portal
  • 資料庫內的資料搬遷:EDB 提供資料移轉工具 EDB Migration Toolkit,支援 JDBC Batch Mode 以及 OCI 高速資料搬遷功能
  • 應用程式端:單就程式碼而言,主流並具備抽象的 DB API 的程式語言 Java、ADO .Net 等改寫比較輕鬆;EDB 也針對 C 開發的程式(OCI、Pro*C)盡可能提供相容性。不過這段還會牽扯到跨系統介接,需要多作評估。

這個筆記要介紹的是資料庫內的物件移轉平台,EDB Migration Portal 的操作。

2020年1月7日 星期二

EnterpriseDB 備份工具 BART 的圖形化界面 PEM 整合介紹

EnterpriseDB 的 PostgreSQL 資料庫解決方案中,提供備份管理工具 EDB Backup and Recovery(BART),以及圖形化管理工具 EDB Postgres Entetprise Manager(PEM)。這兩項軟體,在近期的 BART 2.5.1 與 PEM 7.12 中,提供了圖形化備份整合功能。
有了圖形化整合,用戶可以方便的設定備份功能,以及設定備份排程,並且檢視備份紀錄。
以下紀錄操作的筆記。

2019年6月9日 星期日

不小心在 EDB 企業版鎖住 Superuser 帳號時。。。

在 EDB 提供的 Postgres 企業版所內建的 Oracle 相容功能中,有提供 Oracle 帳號的 Account Lock 功能
若。。。不小心把這個功能指定到資料庫的 Superuser(enterprisedb),把 enterprisedb 鎖住了,然後又已經登出了。。
edb=# alter user enterprisedb account lock;
ALTER ROLE
edb=# \q
-bash-4.2$ 
-bash-4.2$ psql -U enterprisedb
psql.bin: FATAL:  role "enterprisedb" is locked
-bash-4.2$ 

又偏偏沒有其他 Superuser 帳號的話,該怎辦。。。

2019年6月1日 星期六

EDB 11 遮碼功能小筆記—用群組控制遮碼

之前紀錄 EDB 11 的遮碼功能的小小應用,主要是使用特別一點的函數來處理。這邊再紀錄一下,怎麼樣對多個帳號遮碼

2019年5月13日 星期一

EDB Postgres 對 Hadoop 的外部表:hdfs_fdw v2 筆記 — 透過 Hive 界面

EnterpriseDB 提供能夠連線到 Hadoop 平台的 Foreign Data Wrapper,hdfs_fdw,能夠讓 PostgreSQL 資料庫直接把 Hadoop 上面的資料表當成 PostgreSQL 的表格,如此讓 PostgreSQL 直接存取冷資料。

雖然名稱叫做 HDFS 的 FDW,但是 hdfs_fdw 所溝通的是 Hive 跟 Spark 而非 HDFS 本身 ....

EnterpriseDB 對其所提供的 PostgreSQL 發行版和企業版提供 hdfs_fdw 安裝檔,以及社群 YUM Repo 也有提供相關 RPM,不用自己從原始碼編譯。這裡是功能測試的紀錄。

2019年5月2日 星期四

EDB PostgreSQL 企業版資料庫的 RPM 套件安裝方式

EnterpriseDB 在 PostgreSQL 11 釋出之後,調整了資料庫軟體的發行方式:
  • 對 Windows 以及 Mac OS 仍然有提供 PostgreSQL 互動式安裝程式
  • 不再提供 Linux 作業系統下 PostgreSQL 的互動式安裝檔
  • 企業版軟體(EDB Postgres Advanced Server,EPAS)也不再提供 Linux 作業系統下的互動式安裝檔
  • 不論是原生的 PostgreSQL 或是企業版軟體,對 Linux 的支援,改以維護主流的 OS 發行版的套件庫(YUM 以及 APT)
  • 企業版軟體,仍然提供 Windows 平台的互動式安裝檔(近兩大版本的軟體),以提供軟體試用服務
  • 提供企業版資料庫的 Docker Image
  • 雲端資料庫:在各大公有雲都有提供企業版軟體,以及 EDB 自己的 Cloud Database Service

這篇紀錄一下企業版軟體在 Red Hat 系列作業系統中安裝的方式。

2019年2月1日 星期五

EDB 11 新功能 — 內建資料遮碼(Data Redaction)

EDB 的企業版 EDB Postgres Advanced Server 11 新增了幾個內建新功能,其中一個是資料遮碼功能(Data Redaction)。
這個功能主要是把資料打叉叉的功能,其實這已經在 SQL Server 跟 Oracle 有提供了,但是 Postgres 需要 DIY 處理,日前 EDB 有提供教學文章~
現在 EDB 直接提供整合的管理,應用上更貼近 SQL Server 跟 Oracle 一些,不用像使用純 PGSQL 要 DIY;而且 DIY 的物件一多起來,維護人員就會眼花撩亂了~

在這邊整合資料遮碼以及外部表作該功能的練習~

2018年10月16日 星期二

EDB 的 Postgres 企業版的 Docker 容器 v2.3 簡易試用筆記

近日 PostgreSQL 的企業版服務公司 EnterpriseDB 提供了其企業版產品的 Docker 容器服務。只要是 Docker Container 引擎為基礎的容器平台(Docker CE,Docker EE 或其他像 Red Hat OpenShift 平台等)都可以在認證後登入 EDB 提供的 Docker Registry(訂閱期間的用戶都可以~)去拉資料庫的 Image。

這裡簡單紀錄一下 Docker CE 裡面對 EDB Container Registry v2.3 的功能體驗筆記。

2018年9月6日 星期四

PostgreSQL 和 EDB Postgres 企業版的 Stored Procedure 的 debugger 操作筆記

PostgreSQL 有提供 PL/pgSQL 的除錯外掛,啟用後,會整合 pgAdmin4 進行 Stored Procedure 的除錯。
若使用的是企業版,則可以額外進行 Oracle 相容的 Stored Procedure 的除錯。
這裡紀錄 EDB 10 企業版搭配 pgAdmin4 v2 設定的筆記。

2018年8月17日 星期五

偷跑篇:EDB11新的小功能 — PRAGMA AUTONOMOUS TRANSACTION

關聯式資料庫有交易的概念,確保多用戶進行資料的查詢/異動有一個規範。有一些 Oracle 用戶會使用到更進階的交易,叫做 Autonomous Transaction,能夠從當前交易中「再」分支的一個交易。
通常聽到這功能的用途,是有一些作業,需要避免會被當前作業的成敗所影響,最常見的就是額外的 Log 紀錄。
這種功能在 PostgreSQL 裡面其實一直都從缺(可能是因為 PGSQL 社群上開發的人都偏好扁平式的系統設計&規劃?),但是在一些習慣 Oracle 的用戶來說,已經有一些既定的規範,非得使用這種功能才行。
之前已經有一次筆記,演練這個功能的 Workaround 手法,不過現在(2018 年 8 月),下一版的 EDB Postgres 企業版 v11 總算補上了這個「Oracle 相容」功能~

2018年5月8日 星期二

EDB 功能 - EDB*Loader 工具的簡單範例

相仿 Oracle 的 SQL*Loader 工具,是EDB 用來載入大筆資料的工具。
設置方式幾乎與 SQL*Loader 一樣,一樣是設置 Control File,藉此載入 csv 資料進資料庫。
以下將在 EDB 以及 Oracle XE 使用一樣的 Control File 以及資料,對照 Loader 的使用指令。

2018年4月17日 星期二

EDB 的 Postgres 監控平台 PEM Server v7.2 — 試用安裝筆記

這篇是 EDB 公司的 Postgres 監控平台 — Postgres Enterprise Manager v7 的試用安裝筆記。提供需要評估的用戶參考。

2018年4月2日 星期一

EDB Postgres 10 企業版裡面的 Partitioned Table 系統表

在 PostgreSQL 10 引進了原生的 Partitioned Table 語法,EDB 的企業版在很久之前就有 Tartitioned Table。各自也都有相關的系統表。那麼,這些系統表有相互含括嗎?
這裡紀錄一下這個問題,然後順便偷懶,當作新的 Partitioned Table 語法功能筆記~

2017年9月7日 星期四

在CentOS7 + EDB9.6 上安裝 PL/R(R 語言的 Stored Procedure)

這次安裝,裝在 Google Cloud 的 CentOS7上,裡面裝的是 EDB 的 Postgres 9.6 企業版,然而以下安裝也適用在其他 RHEL/Fedora 與其他 PostgreSQL distribution 上

2017年9月1日 星期五

PostgreSQL 的 Materialized View 與 EDB Replication Server ver 6.1 的比較

這篇主要是紀錄一下,PostgreSQL 底下的 Materialized View 與 EnterpriseDB 的週邊產品 EDB Replication Server v6.1 的相關比較資訊。如果要使用範例,直接參考使用手冊即可。