2007-01-29

PostgreSQL CE 8 銀級認證 - 詳細考試範圍

修正:2007-02-21

PostgreSQL CE 8 銀級認證考題
被假設在 "PostgreSQL 版本 8.0 運行在 Linux OS" 除非另行通知
(沒有 OS 依賴問題在考題中) 。

  • 基本的知識部分
    • PostgreSQL 的基本的特徵
    • 執照
      • BSD 執照特徵
    • 變動從老版本
      • 區別在7.4 和8.0 之間
      • 區別在8.0 和8.1 之間
    • 關係資料庫的基本的知識
      • 關係資料模型的基本概念
      • 資料庫管理系統的角色
      • SQL 國際標準 (SQL92 、SQL99, 等)
      • SQL 基本的知識, SQL 分組的 (DDL/DML/DCL)
  • 管理部分
    • Installtaion 方法
      • initdb 命令
      • 資料庫群的概念
      • 模板資料庫
    • 標準工具的用法
      • psql, pg_ctl, postmaster, createdb, dropdb, createlang, droplang, createuser, dropuser, vacuumdb
    • 組態檔
      • postgresql.conf
        • 描述格式
        • 連線和認證
        • 客戶端連線預設
        • log_destination, redirect_stderr, silent_mode, log_line_prefix
      • pg_hba.conf
      • SET/SHOW 宣告用法
    • 備用方法
      • pg_dump, pg_dumpall, pg_restore, psql 用法命令
      • Backup/Restore 由複製目錄
      • PITR 概念(對詳細的PITR 用法的沒有問題在銀級考試)
      • 拷貝宣告和 \copy 命令用法
    • 基本的管理的任務
      • Adding/Deleting/Changing 資料庫用戶
      • VACUUM/ANALYZE 的用法和意思
      • 作用獲得系統資訊(informaion) (版本、current_user, 等。)
      • 資訊網要模式(Information schema), 系統目錄(System catalog)(pg_user 、pg_shadow, 等。對統計 VIEWs 和 pg_stats 的沒有問題)
      • 在資料表上的授權, GRANT/REVOKE 宣告
  • Development/SQL 部分
    • SQL 命令
      • 選擇宣告
        • 選擇 columns/tables, LIMIT, OFFSET, ORDER BY
        • DISTINCT, GROUP BY, HAVING, 子查詢(subquery)
        • JOIN, OUTER JOIN, EXISTS, IN, 加入詢問
        • 有條件聲明 (CASE, COALESCE, NULLIF)
      • INSERT/UPDATE/DELETE 聲明
      • 序列
      • 資料類型 (BOOLEAN, string, integer, time, NULL, SERIAL, OID, array)
      • 二進制陣列類型, 大型物件
      • 表格定義(constraints, default values, temporary tables, inheritence)
      • ALTER TABLE, DROP TABLE, CREATE TABLE AS
      • 索引
      • Views
      • 規則, 觸發器
      • 網要模式
      • PREPARE
      • 游標
      • 領域定義, 類型定義
      • 函數定義, PL/pgSQL
    • 構建 funtions
      • 聚集函數 (count, sum, avg, max, min)
      • 算術函數, 運算子
      • 字串函數作用 (char_length, lower, upper, substring, replace, trim)
      • 字串操作(||, ~, LIKE, SIMILAR TO)
      • 時間函數(age, current_date, current_timestamp, current_time, extract, to_char)
    • 交易概念
      • 交易宣告(BEGIN, COMMIT, ROLLBACK, SAVEPOINT, 和其它等效SQL 聲明
      • 交易分離層級
      • 隱含鎖、鎖宣告、欄位鎖和資料表鎖
      • LISTEN/NOTIFY 宣告

原文:
http://www.sraoss.co.jp/postgresql-ce/courses/silver8-details_en.html

2007-01-25

OOo 2.2 與 ERD_UML 設計工具

OpenOffice 2.x 的 Base 雖然仍不夠完善
但做為一個免費的資料庫ER模型的設計工具
在成本效益比上卻大大超越商業版本的效益.
以下是朝益的實作圖:

PostgreSQL CE - 資格認識考試

PostgreSQL CE (PostgreSQL Certification Exam)

考試費用:$110 (USD)

是資格證書制目標族群為工程師介入PostgreSQL 系統開發或管理、PostgreSQL 教練員和顧問。PostgreSQL CE 提供一個機會給一個被證明的合格者顯示某人的被證明的技巧在處理PostgreSQL 資料庫系統, 和提供系統集成商和資訊系統部門能依靠的評估標準。
PostgreSQL CE's 證書制由 SRA OSS 執行, 並且考試由 Pearson VUE 執行。

Duration 80 minutes
Question Format Multiple-choice
Number of Questions 50 questions
Exam Structure 3 sections (Basic knowledge 10%, Administration 40%, Development/SQL 50%)
Passing mark 64 points (out of 100 points)


Exam Scopes

Questions for this exam is created in the scopes shown below, and from the assumption that the examinee have abilities listed in the "Targeted Qualifiers" at the top. For more detailed exam scopes, please refer to the detailed exam scopes page. Example Questions will be added to Schools/Books page.

Basic knowledge section 10%
PostgreSQL's basic characteristics
License
Major version up details
Basic knowledge of the relational database
Administration section 40%
Installation method
Usages of the standard tools
Configuration file
Backup method
Basic administration knowledge
Development/SQL section 50%
SQL commands
Built-in functions
Transaction concepts


http://osb.sra.co.jp/postgresql-ce/news_en.html
http://www.sraoss.co.jp/postgresql-ce/courses/silver8_en.html

與Oracle資料庫相容的EnterpriseDB

資料庫管理系統(DBMS)是企業界每天正常運作、有效執行的應用系統的最底層基礎,在這個領域裡,企業界大都必須採用商用版本的資料庫,以取得可能的技術支援與故障排除。Open-Source的資料庫系統在企業內的運用始終不是主流,如果有使用的話,可能也是用在獨立的、不致影響運作的系統上(例如論壇系統)。


PosgreSQL Home

eWeek.com在這篇 Open Database Startup Taps PostgreSQL裡介紹了剛推出試用的EnterpriseDB 2005

  • 推出公司:EnterpriseDB Corporation (EDB)
  • EnterpriseDB是建立在Open-Source 資料庫裡開發了20年歷程的PostgreSQL之上的資料庫系統
  • EDB的「賣點」是:將PostgreSQL改造成與 Oracle相容的系統;舉凡Trigger、Stored procedure、View等等,都要改造成Oracle的面貌
SQL 世界裡還是百家爭鳴、有我無你的高度競爭,除了部份的敘述有ANSI的標準外,仍有許多部份都是各家有各家的標準。幾年前隨著Java如日中天的氣勢而炒 得沸沸揚揚的SQLJ,現在看來也有點無疾而終(似乎還是只有Oracle支援得較多?)。PostgreSQL也有自己的語言:PL/pgSQL - SQL Procedural Language,其語法其實是很像Oracle的PL/SQL,但還是有差異。

EDB就是要把二者間的差異縮到最小,並提供企業級的服務與支援,從而把Open-Source的資料庫管理系統推到企業界。

由EnterpriseDB論數據庫開源模式

編譯於InfoWorld 2005-11-15

EnterpriseDB的CEO, 正在努力開創一個可能成為下一代開源公司的原型的商業模式。

「我相信開源軟件將改變一切關於企業的應用軟件」 Astor 說。「它是在企業應用中的一種最基本的轉變就像當初互聯網或XML一樣。它究竟怎麼成功,沒人知道,商業模式會是什麼樣子,也沒人知道。」

目前,開源業務採用了兩種模式之一作為典型代表。Linux開發商像Novell/Suse 和 Red Hat 是主要的再包裝者。他們彙集開源軟件並將其售給客戶,費用包括支持的價格。還有一類像JBoss 和MySQL的公司則分享業內新產品的發展,同時也接受社團的支持。最具特色的是他們在雙重認證方案下銷售最終的產品。

EnterpriseDB的核心產品是PostgreSQL,一個成熟的開源數據庫。Astor的公司對其提供支持,同時也附帶提供使 PostgreSQL理解Oracle的 PL/SQL語句的引擎。這就意味著你可以Oracle寫應用程序並將其指向EnterpriseDB數據庫,並且在大多數情況下你只需花費Oracle 認證的一小部分成本就可以無需轉變的運行。

至少,EnterpriseDB的 PL/SQL引擎暫時是私人軟件。這就使得有些人不滿意,但Astor認為希望PostgreSQL論壇提供像Oracle一樣的兼容性的期望本身就是錯誤的。

按Astor看來,核心數據庫的功能性變成了日用品。他問:「如果你想免費得到PostgreSQL的數據庫,天哪,那不是日用品是什麼?」Astor說 數據庫不能象IBM, Microsoft和Oracle所做的那樣被公司像日用品一樣定價。「還有,」他補充道,「即使世界上有免費的數據庫,那也要有像 EnterpriseDB一樣的公司。」

EnterpriseDB公司提供的也不同與其他開源公司提供的。想一想:當你購買了MySQL的商業認證,你獲得的僅僅是技術支持和MySQL的使用 權,而它和GPL(GNU 常規認證)是不兼容的;而你購買了EnterpriseDB,你不僅獲得了PostgreSQL的技術支持,還能獲得其他地方沒有的獨特兼容特性。如果將 其稱為寄生,那恐怕就沒有真正的開源商業模式了。

SONY在線購開源數據庫 甲骨文高價遭拋棄

作者:令狐達 | 出處:eNet | 發佈時間:2006-3-21 |

【eNet矽谷動力消息】據國外媒體週一報導,主營網絡遊戲的索尼在線娛樂公司日前和開源數據庫廠商EnterpriseDB簽署協議,購買大批數據庫產品及支持服務。索尼在線稱將用EnterpriseDB取代一部分甲骨文數據庫。

  在購買服務的同時,索尼在線還對EnterpriseDB公司進行了一筆投資,稱為近來對這家開源數據庫廠商註冊的第三個股東。之前,Charles River一級Valhalla兩家風險投資公司已經向該公司投入700萬美元。

  索尼在線的遊戲網絡為成千上萬的用戶提供服務。該公司副總裁裡克·赫曼表示,公司初期將首先把EnterpriseDB用於後台應用中,比如客戶計費系統,並逐漸向運行遊戲服務的前端轉移。

   赫曼說,索尼在線將用EnterpriseDB取代一部分甲骨文公司的Oracle數據庫。這次購買EnterpriseDB服務的主要原因是甲骨文的 軟件許可成本太高,此外,EnterpriseDB和甲骨文的兼容性較好,更容易遷移一些應用軟件,EnterpriseDB另外一個優點是沒有「套裝」 很多無用的產品。據悉,索尼目前已經開始遷移系統。

  赫曼並未透露將有多少Oracle服務器將被替換,以及將購買多少套EnterpriseDB。不過,據透露,索尼在線這次購買的EnterpriseDB許可數量不小,在經過一段時間後,赫曼表示「第二批的採購數量將極其多」。

   目前,甲骨文Oracle數據庫企業版每處理器的許可費用為4萬美元。而EnterpriseDB的許可加上一年的最高級服務僅為5000美元。去年, 甲骨文已經推出了一款免費版的XE數據庫,但在應用條件上有諸多限制,比如數據文件不能超過4G,服務器的內存不能大於1G,並不適合實際使用。

  據報導,索尼在線曾經考慮過開源數據庫領域的「霸主」MySQL,但後來認為EnterpriseDB和甲骨文產品的兼容性更好。目前,該公司的數據庫服務器採用Linux企業版操作系統。

  EnterpriseDB公司的首席執行官安迪表示,這項交易將促使其他的「財富500強」企業使用他們的開源數據庫產品。他說:「這將向其他的財富499發出一個信息。」

  值得一提的是,EnterpriseDB開源數據庫並非「原創」,它是基於早期的PostgreSQL開源數據庫項目完善而成的。按照開源軟件許可慣例,軟件應該免費,但服務可以收費。

2007-01-23

phpPgAdmin 4.1 發布

2007 年1月20 日
phpPgAdmin 。版本4.1 增加許多新特點, 臭蟲固定和
更新翻譯在早先版本。

下載
--------
http://phppgadmin.sourceforge.net/?page=download

演示
----

給充分功能演示嘗試, 參觀:

http://phppgadmin.kattare.com/phppgadmin4/


http://www.postgresql.org/about/news.724

2007-01-16

BI - PostgreSQL 與 OpenOffice 2.x

朝益撰寫中

1.改變OO的JAVA設定指向到JDK 6.0 and JDBC 8.2 Type 4
2.OO ---> 新增 Database ---> JDBC ---> jdbc.postgresql://IP/dbname
3.PostgreSQL JDBC conf : org.postgresql.Driver

目前發現一個bug在OpenOffice2.1英文版的使用上
不要用資料表精靈來創建表, 型態會全變成 text[name].
手工建會好點...

BI - PostgreSQL 與 eclipse BIRT

幾乎在各種應用中,報表都具有其不可替代的作用。
各類報表軟件也是爭奇鬥豔,如今Eclipse也推出了自己的報表框架:BIRT。
專門用來處理和製作報表輸出的的 BIRT Project.

一篇寫的不錯的基本教學
http://www.ibm.com/developerworks/cn/opensource/os-ecl-birt/

PostgreSQL 只要透過改變 JDBC Driver 就能輕鬆開始構建 PostgreSQL 的BI.

(有空再寫-朝益)

PostgreSQL 8.2 與 JDBC Type 4 Driver

PostgreSQL 8.2 在 Java的開發上又邁進了一大步,
提供了最新的Type 4的原生驅動器.

簡單解說一下JDBC的功能:
JDBC是用於執行SQL的Java API,它將資料庫存取的API與SQL陳述分開,實現資料庫無關的API介面,藉由JDBC統一的介面,開發人員只要專注於SQL陳述,而可以不必理會底層的資料庫驅動程式與相關介面。
這篇文章也寫的很棒的說明

對非Java的開發員來說, 最重要的功能就是目前很多應用軟體都可以透過使用Java的JDBC功能來直接與資料庫進行連結與取存.

Type 4:Pure Java Driver
使用純Java撰寫驅動程式與資料庫作溝通,而不透過橋接或中間件來存取資料庫:Application <--> Pure Java Driver <--> Database

想馬上體驗的朋友可以另一篇文中介紹的SQuirreL SQL Client
另外安裝 Java 6.0 並下載
PostgreSQL JDBC Driver http://jdbc.postgresql.org/download.html

目前最新的是 8.2-504 JDBC 4

2007-01-15

pgAgent - pgAdmin III 內建專屬的工作排程員

官方說明和教學(英文)

換我來寫構建範例吧~
阿益~一直都是用 Debian Linux 來建置 Server 的應用...
所以只好專寫 Debian 囉...

  1. 請確定您的 PostgreSQL 一切正常.
  2. #apt-get install pgagent
    pgagent: /usr/bin/pgagent
  3. (有急事, 晚點寫@@")

2007-01-14

PostgreSQL 簡介(官方直譯版)

關於

PostgreSQL 是一個強有力, 開放來源關係資料庫系統。它有超過贏得了它強的名譽在可靠性、資料完整性, 和正確性上的15 年活躍發展和被證明的建築學。它運行在所有主要作業系統, 包括Linux 、UNIX (AIX, BSD 、HP-UX 、SGI IRIX, Mac OS x, Solaris, Tru64), 和Windwos。
它充分地酸服從, 有完全支持為外部鍵, Join, View、觸發器, 和預儲程序(在多種語言) 。它包括多數 SQL92 和 SQL99 資料類型, 包括INTEGER, NUMERIC, BOOLEAN, CHAR, VARCHAR, DATE, INTERVAL, and TIMESTAMP。
它並且支持二進制大對象, 包括圖片, 聲音, 或錄影存貯。它有當地編程的接口為 C/C++, Java, Net, Perl, Python, Ruby, Tcl, ODBC, 在其他人, 和 例外文獻中

企業組資料庫, PostgreSQL 吹噓老練特點譬如多版本同時操作控制(MVCC), 點在時間補救, 表空間、異步複製、嵌套事務(savepoints), online/hot 備份, 一次老練詢問planner/optimizer, 和寫向前採伐為錯誤容許度。它支持國際字符集, multibyte 字符內碼, Unicode, 並且它是地點明白為排序, 情形敏感性, 和格式化。它是高度可升級的兩個在它可能處理和的純粹資料數量並且在一致用戶的數量它可能容納。有活躍PostgreSQL 系統在處理超出資料4 terabytes 的生產環境裡。

一般 PostgreSQL 極限值包括在如下表。

極限價值
最大資料庫大小無限
最大表大小32 TB
最大列(row)大小1.6 TB
最大欄位(Field)大小1 GB
每表最大列數(rows)無限
每表最大欄位數(columns)250 - 1600 根據欄位類型
每表最大索引數(Indexes)
無限

PostgreSQL 贏取了 稱讚從它的用戶產業認識, 包括Linux 新媒介褒獎為Linux 雜誌編輯的挑選褒獎的最佳的資料庫系統和三次優勝者為最佳的DBMS 。

Featureful 和對ANSI-SQL標準服從

PostgreSQL 自傲在標準服從。它的SQL 實施強烈依照ANSI-SQL 92/99 標準。它有完全支持為subqueries (包括subselects 在從條目), 讀做的和serializable 交易隔離水平。並且當PostgreSQL 有本身支持多個圖解每資料庫的一個充分地關係系統目錄, 它的編目是還可取得通過資訊圖解依照被定義在SQL 標準。

資料完整性特點包括(複合) primary keys, foreign keys with restricting and cascading updates/deletes, check constraints, unique constraints, and not null constraints。

它並且有許多引伸和先進的特點。在便利之中是自動增加的專欄通過序列, 並且 LIMIT/OFFSET 允許部份結果回歸設置。PostgreSQL 支持可能使用任何它的 unique, partial, and functional indexes which can use any of its B-tree, R-tree, hash, or GiST storage methods。

GiST (Generalized Search Tree) 分度法是帶來大多不同的排序的和搜索算法包括B-tree 、B+ 樹、R 樹、部份總和樹, 被排列的B+ 樹和許多其他的一個先進的系統。它並且提供提供兩個習慣資料類型創作並且延伸性詢問方法搜尋他們的一個接口。因而, 要義提供靈活性指定 什麼 您存放, 怎麼 您存放它, 並且 能力定義新方式 搜尋通過它--- 超出那些由標準B-tree 、R 樹和其它廣義搜索算法提供的方式。

要義起一個基礎作用對於使用PostgreSQL 譬如OpenFTS PostGIS 的許多 公開 項 目。OpenFTS (開放來源全文搜索引擎) 為資料庫搜尋提供資料和相關性等第網上分度法。PostGIS 是增加支持對於地理對象在PostgreSQL, 允許它被使用作為一個空間資料庫為地理資訊系統的項目(GIS), 很像ESRI 的SDE 或Oracle 的空間引伸。

其它先進的特點包括桌繼承, 規則系統, 和資料庫事件。表繼承投入對象針對的偏鋒在桌創作, 允許資料庫設計員 從 其它桌獲得新桌, 對待他們作為基本的類。更好, PostgreSQL 支持唯一和多重繼承性這樣。

規則系統, 並且稱 詢問重寫系統, 允許資料庫設計員創造辨認具體操作為一個指定的桌或觀點的規則, 並且動態地變換他們成供選擇操作當他們被處理。

事件系統是消息和事件可能被傳送在客戶之間使用通知命令, 允許 簡單的 同輩凝視通信和先進的協調在資料庫事件的一個過程間通信系統。因為通知可能被發布從觸發器和被存放的規程, PostgreSQL 客戶能監測資料庫事件譬如桌更新、插入物, 或刪除當他們發生。

高可客製定化

PostgreSQL 比十二編程語言跑被存放的規程在更多, 包括 Java, Perl, Python, Ruby, Tcl, C/C++, and its own PL/pgSQL, which is similar to Oracle's PL/SQL。包括有它的標準子例程程式庫範圍從基本的算術和串操作對密碼學和Oracle 兼容性的上百內部函數。觸發器和被存放的規程可能被寫在C 和被裝載入資料庫作為圖書館, 允許偉大的靈活性在擴大它的能力。
同樣, PostgreSQL 包括承認開發商定義和創造他們自己的習慣資料類型與支持的作用一起和操作員定義他們的行為的一個框架。結果, 範圍從幾何學和空間原始對網址對均勻ISBN/ISSN 的許多先進的資料類型被創造了(國際標準書Number/International 標準號碼) 資料類型, 可能任意地增加來系統。

正有許多做法語言由PostgreSQL 支持, 有並且許多圖書館接口, 允許各種各樣的語言被編寫和被解釋對接口與PostgreSQL 。有接口為 Java (JDBC), ODBC, Perl, Python, Ruby, C, C++, PHP, Lisp, Scheme, and Qt just to name a few.

最好所有, PostgreSQL 的原始代碼是可利用的在最寬宏的開放來源執照之下: BSD 執照。這個執照給您自由用途, 修改和分佈PostgreSQL 在任一個您喜歡的形式, 開放或閉合的來源。您做的所有修改、改進, 或變動是你的做與作為您請。, PostgreSQL 是不僅一個強有力的資料庫系統能管理企業, 這是顯現出in-house, 網, 或商業軟體產品要求可勝任的RDBMS 的發展平臺在。

原文...
http://www.postgresql.org/about/

PostgreSQL 功能擴展的專案

Additional Functionality

  • OpenFTS (開放源碼全文搜尋引擎:Open Source Full Text Search Engine) - An advanced PostgreSQL-based search engine that provides online indexing of data and relevance ranking for database searching. Close integration with database allows use of metadata to restrict search results.
  • PostGIS - 增加對"地理"物件的支持.

pgAdmin III - GUI 管理者工具

用途:
PostgreSQL 專屬的GUI管理者工具, 免費且內建於PostgreSQL發行包內.
可單獨安裝.

支援的平台:
Linux, FreeBSD, Solaris, Mac OSX and Windows...

介面語言:
多國語言版, 當然含有正體/簡體中文版, 就是小弟負責的啦^^"

重大功能:
內建Slony-I的GUI管理和設定介面...

官方網站:
http://www.pgadmin.org/

2007-01-13

PostgreSQL 資助開發主辦者公司名單

這裡實際說明投入參與開發的公司:

  • 日本: 富士通, NTT, SRA, SONY...
  • 美國: Skype, RedHat, SUN ...
  • 以PostgreSQL為主產品推行商業版本應用的: EnterpriseDB ...
詳文

PostgreSQL 8.2 版本的新特色

2006 年12月5 日, 在華盛頓特區的會議中正式發佈:
此新版本新增及改進了超過 200 項的功能。
包括有 Prepared Statements 有了新的管理介面,並且效能也大幅提升、SQL 也新增一些語法,可更容易去管理資料庫、TSearch2 也支援了 UTF-8 和 GIN 等等,算是很豐富的一次新版發行。被發布的8.2 版本繼續 PostgreSQL 的成熟性入主資料庫管理系統有能力在企業運用上。

底下為此篇新聞的中文翻譯:

新版本的特色如下:

新工具和特點使資料庫管理和發展更加容易有:

表現改善: 版本8.2 改進表現較高的效能(在 OLTP 的測試部份增進了 20% 以上的效能)(譯註:OLTP 為 OnLine Transaction Processing)用戶能獲取在資料儲藏的效率。變動包括更加快速的在記憶並且在盤排序, 更好的多重處理機結垢、被分成的資料詢問更好的計劃, 更加快速的成批裝入和浩大地加速的外連接符。

Warm Standby資料庫: 加強的 Warm 備用資料庫(譯註:也就是說我們可以更容易去為資料庫建立「修復備份 Failover copy」)

Online Index修造: 線上索引建立(譯註:當資料寫入資料庫時即建立索引並調校,不需停止服務)

SQL 2003 特點: PostgreSQL, 知名為標準服從, 增加了句法為幾個更多特點被介紹在ANSI SQL 2003 年規格, 有: statistical aggregates, multi-row VALUE statments, UPDATE RETURNING and multi-column aggregates.

先進的資料庫特點, 被提供在PostgreSQL 8.2 在其他主要資料庫系統之前, 有:

廣義被倒置的索引: 支持分度法半被構造的和全文資料一個更加可升級和更加可編程式的方式。在 TSearch2 中加入 Generalized Inverted Indexes 支援(譯註:一種建立索引的方式)

DTrace: PostgreSQL 並且被導航了為Solaris DTrace 和其他先進的追蹤的工具通過普通監視框架。

"以資料倉庫事例安置十億列桌和資料多terabytes, 網上索引修造和hot-standby 能力是關鍵的," Schlossnagle 說Theo, 主要在OmniTI 電腦咨詢。"我們並且被激發, PostgreSQL 現在是一個first- 類DTrace 公民。這意味著我們的規則系統分析努力可能現在合併資料庫具體資料導致更加意味深長的結果。"

Advisory Locks(譯註:可允許應用層級的資料庫物件使用資料庫的鎖定引擎)

新的 ISN/ISBN 及 pgCrypto 模組(譯註:支援最新的 ISN/ISBN 國際標準及採用了最新的加解密模組)

可選擇的 pg_dump 選項

… 以及包含了超過 300 項更新。

更多的特色請參見 Press kit

在 MySQL 和 PostgreSQL 間如何抉擇?

今天看到了一篇文章「MySQL vs. PostgreSQL」,
講述如何在不同的場合在 MySQL 和 PostgreSQL 之間作出正確的選擇。
實際上,對這兩個開源產品不熟悉的人,通過這篇文章,
也知道了 MySQL 和 PostgreSQL 的不同應用範圍。

1、什麼情況下選擇MySQL
首要考慮是數據庫應用的場合,如果是基於WEB的應用程序,
或對數據庫性能要求較低的應用,MySQL 以它的快速和易於 web 部署將成為首選
然而,如果你的應用程序需要依賴存儲過程和外鍵引用實現,那麼還是選擇 PostgreSQL 吧。

需要說明的是,MySQL 不是完全兼容 ANSI SQL 標準的產品
PostgreSQL 更加接近 ANSI SQL 標準,MySQL更加接近ODBC標準。
(對於需要移植到其他數據庫平台的產品來說,符合ANSI SQL標準的產品可能更好些。)

總結一下,選擇 MySQL 比選擇 PostgreSQL 好的理由:
a、MySQL相對PostgreSQL運算更快 (在 2007年已經被 PostgreSQL 8.2 版後超越)
b、數據庫設計更加簡單
c、你可以更加方便創建web站點
d、MySQL的複製技術已經完全測試通過(在 2007年已經被 PostgreSQL 8.2 版後超越)
e、你無需對MySQL數據庫做清空處理(在 2007年已經被 PostgreSQL 8.2 版後超越)

2、什麼情況下選擇PostgreSQL
很少有web開發者選擇PostgreSQL,
因為他們覺得PostgreSQL的一些附加特色功能降低了數據庫性能。
但這些特色功能正是其優於MysQL的地方所在。
比如,外鍵、觸發器、視圖。他們的存在可以在應用程序中隱藏數據庫設計的複雜程度,
從而避免了創建一些龐雜的SQL命令。
比如,很多PostgreSQL 的用戶都喜歡PostgreSQL的函數功能,而在MySQL裡面,
你可能需要用嵌套的對重、復合、複雜SQL語句來實現的功能,
PostgreSQL的 一個小小的函數就解決問題了。
同時,PostgreSQL符合ANSI SQL規範。

總結一下選擇PostgreSQL的理由:
a、可進行複雜數據庫的設計
b、可以在 Oracle、Sybase、MSSQL 之間遷移
c、複雜業務規則的設計建立
d、服務器可以進行腳本編程(Tcl、Perl、Python等)
e、支持事務
f、支持存儲過程
g、支持幾何數據類型(坐標、多邊形等)
h、使用了R樹

閱讀參考
http://builder.com.com/article.jhtml?id=u00820010815cnt01.htm
http://builder.com.com/article.jhtml?id=u00320020523dol01.htm

PostgreSQL HA 相關文章的連結

1.High Availability PostgreSQL HOWTO
2.High Availability Clustering for PostgreSQL on Linux

MySQL VS PostgreSQL

總歸起來

  • MySQL 適合輕量,只有資料,關連單純的應用,他保證你快。
    (尤其是在 4.x 版的時代版本, 核心的簡易設計少了很多高級特性,
    速度上非常適合用在僅利用DB來存儲資料但不直構建程序在DB中的應用.)

  • PostgreSQL 適合良好或是複雜設計的應用
    你會用到 trigger, stored procedure
    等功能來處理你的資料(你總不會說論壇的文章需要這些東西吧),
    那你應該選擇 PostgreSQL。
PostgreSQL 的穩定度真是嚇死人,以前我把 pgcluster 的 load balancer 操爆了,
結果DB還沒事。

當然還是一句老話各有優缺點,你應該要慎選應用的目的DBMS,不要人云亦云!

至於為啥都沒提到 MSSQL 和 Oracle,也不過就是因為他們要錢,
對於一些小型的專案真的是不可能去使用的…

為什麼選用PostgreSQL,而不是Oracle?

這是一篇很棒且有趣的說明...
http://my.so-net.net.tw/seiliki/pgsql-advocacy1.html

PostgreSQL & Google-Analytics Running...

::Planet PostgreSQL::

PostgreSQL Information Page

PostgreSQL日記(日本 石井達夫先生Blog)

PostgreSQL News

黑喵的家 - 資料庫相關

Google 網上論壇
PostgreSQL 8 DBA 專業指南中文版
書籍內容討論與更多下載區(造訪此群組)
目錄下載: PostgreSQL_8 _DBA_Index_zh_TW.pdf (更新:2007-05-18)

全球訪客分佈圖(Google)

全球訪客分佈圖(Google)