2008-01-31

(更新)PostgreSQL 8.3 JDBC Driver 驅動程式訊息中文化

在上個月~小郭於課堂上講授 Java JDBC 時,
首次拿 PostgreSQL 8.3 與 PostgreSQL 8.3 JDBC Driver 當實作教材 ...
才發現是該修正 PostgreSQL JDBC 中文地區化訊息的檔案囉~
(內部訊息的中文化(簡體/正體)自 2005 年後就未有更新過...)
導致大量的訊息均與目前脫節過高 ...

為了維持 PostgreSQL 與 Java 的高品質的優越性,
小郭當然又跳入該工作目標... "翻"滾吧....!!!

花了快一個月慢慢校正翻譯且送交後(仍有少數字串未完全翻譯.)
目前也包含於 PostgreSQL 8.3 二個常用的 JDBC (TYPE-3 & 4) 正式版本中
當然包括簡體與正體中文均更新囉~

您可以直接於官網下載當前的 8.3 JDBC Driver
http://jdbc.postgresql.org/download.html#current
或直接點擊下面的官網連結來下載使用

JDBC3 Postgresql Driver, Version 8.3-603

JDBC4 Postgresql Driver, Version 8.3-603

PostgreSQL JDBC Driver CVS - 譯文檔位置
http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/jdbc/pgjdbc/org/postgresql/translation/

延伸閱讀(Link):

2008-01-29

分享 PostgreSQL 教學簡報(一) PostgreSQL 簡介

更新日期: 2008-01-28
參考來源: 自製 Googel 文件

本文內容:
這是小郭的上課教學的簡報分享~
也歡迎您拿去教導與推廣用~~
後續的教學主題, 會陸續整理給大家~

Google 的文件是活的@@"~

這表示小郭會不定時的回去編修改進簡報內容~
隨時歡迎您再次回來閱讀, 也許會有新發現哦~呵

主題(一) : PostgreSQL 簡介



延伸閱讀(Link):

2008-01-07

PostgreSQL 累積安全性版次升級(8.2.6)

更新日期:2008-01-07
參考來源:
http://www.postgresql.org/about/news.905

本文內容:
PostgreSQL Global Development Group 發佈當前版本的 5 個安全性議題修正.
這些發佈的更新包含所有的當前 PostgreSQL 版本, 包括 8.2, 8.1, 8.0, 7.4 與 7.3.

安全性更新如下:

索引函數特權的擴張
Index Functions Privilege Escalation
(CVE-2007-6600)

正規表達式的阻絕服務攻擊
Regular Expression Denial-of-Service
(CVE-2007-4772, CVE-2007-6067, CVE-2007-4769)

DBLink 特權的擴張
DBLink Privilege Escalation
(CVE-2007-6601)


延伸閱讀(Link):
http://www.postgresql.org/ftp/binary/v8.2.6/
http://www.postgresql.org/ftp/source/v8.2.6/

2008-01-05

PostgreSQL 8.3 Cheat Sheet(速查表) 預灠

更新日期:2008-01-05
參考來源:
PostgreSQL 8.3 Cheat Sheet Overview

本文內容:
以下是張 JPG 的預灠圖版(點圖可放大),
這張圖很適合您當學習與開發時的參考用哦~



更完整的 PDF 檔與 HTML 版本您可以在下列網址中下載.

PostgreSQL 8.3 Cheat sheet in PDF &
the PostgreSQL 8.3 Cheat sheet in HTML.

延伸閱讀(Link):
PostgreSQL 的工具小卡(Cheat sheet) - 本站舊文

從 MySQL 遷移到 PostgreSQL 專題教學(一)

更新:2007-01-04
對映章節:

內容:
如何從 MySQL 快速的遷移到 PostgreSQL, 若是一個新的專案,
那最大的問題點應該是在於這二個資料庫對資料表的定義方式不同之處...

小郭這次拿著 l2j server (天堂二) java即時遊戲伺服器專案
的 sql 檔來做個分析報告給各位參考和教學.
l2j 專案目標為純粹使用 java 來實作改寫
多人即時的NC Soft 公司的 天堂II 3D 遊戲伺服器
,
預設的後端資料庫採用 MySQL, 但因其使用 JDBC 固在遷移 DBMS 時變的輕易 ...
所以囉~少說就有近 50 張資料表 SQL 和萬筆的 Data 要倒到資料庫裡啦 ...

@@"...(開玩笑~您以為線上遊戲公司不豐富遊戲內容~您會付錢玩嗎~呵)

幸好在龐大 pgFoundry 250多個與 PostgreSQL 應用有關的子專案中,
活躍著這個 script 專案開發:
mysql2pgsql http://pgfoundry.org/projects/mysql2pgsql/
看專案名不難了解他就是用來轉換 MySQL 到 PostgreSQL 的 sql 轉換工具,
不到幾 KB 的大小, 但卻是以最強悍的文字處理語言的 Perl 撰寫而成

2007年三月本社群的文章
mysql2pgsql :給 MySQL 用戶遷移至 PostgreSQL 的轉換程序稿本

使用方式最簡易的做法就如下的操作方式(請確定您的系統裡有駱駝哦~'Perl')
$ perl mysql2pgsql.perl [mysql.sql] [pgsql.sql]
[mysql.sql] : 代表您取得的 MySQL 使用的 sql 文件檔
[pgsql.sql] : 代表您轉換後要建立的檔案名稱

我們來經由實際演練自動轉換後的 SQL 內容來比較差異點並補充說明
先拿最小的 sql 檔開刀 (玩家登入帳號管理資料表)
$ perl mysql2pgsql.perl l2jdb_login_account.sql l2jdb_login_account_pg.sql

MySQL: l2jdb_login_account.sql
CREATE TABLE `accounts` (
`login` VARCHAR(45) NOT NULL default '',

`password` VARCHAR(45) ,

`lastactive` DECIMAL(20),

`access_level` INT,

`lastIP` VARCHAR(20),

PRIMARY KEY (`login`)


PostgreSQL: l2jdb_login_account_pg.sql
CREATE TABLE "accounts" (
"login" VARCHAR(45) NOT NULL default '',
"password" VARCHAR(45) ,

"lastactive" DECIMAL(20),
"access_level" INT,

"lastip" VARCHAR(20),

primary key ("login")


差異點:

  1. PostgreSQL 對自定字串用雙引號標記 " ".
  2. DECIMAL 型別名稱雖然相同, 但這是 PostgreSQL 對其'包容'的作法,
    執行 SQL 後套用正式 PG 對等功能的型別 numeric(20,0).
  3. VARCHAR, INT 透過映射(mapping)成 PostgreSQL 的正規型別名稱, 分別為:
    'character varying' & 'integer'.

來看看更完整的圖例說明, 執行後對 MySQL 包容性的轉換, 減低您遷移上的疑慮...


這回順利成功, 下回我們將進行大規模的手術囉~呵

延伸閱讀(Link):

2008-01-04

如何將 PostgreSQL 開放透過網路連線操作 ?

如何將 PostgreSQL 開放透過網路連線使用 ?
這是個好問題也是個很多初次進入 PostgreSQL 的朋友最大的困擾,
時常都有學生或者是網友提到這事件給小郭,
新年新希望整理這篇教學給大家參考 ...

首先必須告知您, 在初次安裝 PostgreSQL 後,
不論您使用的是那個平台的版本, 在預設的情況下,
PostgreSQL 是不允許透過 TCP/IP 網路進行連線的!
理由就是要降低不必要的資料庫系統網路安全性暴露的可能風險!

基於上述的理由, 在您進行以下的啟用時, 您應該更加注意您的系統安全知識 ...
首先依您的作業系統(OS)的平台, 找到如下的檔案位置:
Debian Linux: /etc/postgresql/8.2/main/postgresql.conf
Windows: C:\Program Files\postgresql\data\postgresql.conf
編輯變更如下圖的內容, 來允許接受網路連線
Listen addresses = '*'


再來 PostgreSQL 使用主機權限驗證基礎的文件檔要進行追加如下的內容
Debian Linux: /etc/postgresql/8.2/main/pg_hba.conf
Windows: C:\Program Files\postgresql\data\pg_hba.conf

以安全性的角度來說, 上述這行放寛成允許來自任何 IP 連線到任何的資料庫,
這並不是件好事, 不過您若僅是用在學習 PostgreSQL 到是件方便的理由...
最後的 md5 是密碼必須經過 md5 方式驗證通過後才能放行的意思

完成上面二個步驟後, 必須先重新啟動一次 PostgreSQL 伺服器

您以為您完成了嗎 ? 不

這張圖告訴您, 連線倒是成功了, 不過呢問題出在密碼驗證上 ...

在 Debian Linux 下使用套件進行安裝的 PostgreSQL,
postgres 這位 PostgreSQL 的超級使用者的密碼在資料庫裡是空的 @@"


在資料庫裡的系統資料表中有張表存放著真正的密碼 pg_shadow ,
你必須進行如圖的操作, 追加密碼


再來就靠各位的修練囉~ 歡迎您的加入 ^.^


延伸閱讀(Link):

psql - PostgreSQL 互動式終端機中文語系檔進度說明

希望能趕在 PostgreSQL 8.3 正式版發佈前完成 !
這樣就能帶給許多正體與簡體中文的初學者們, 一個更易學習的方式 ...

我告訴我自己 PostgreSQL 是個很高質量的自由軟體與開發者們分工合作的產物 !
更歡迎您的加入參與社群服務 ^.^

psql 目前小郭的翻譯進度大約為 70% (總字串數為 600 個左右),
除了翻譯內容還替顯示的排版做了點調校~給大家最舒服的視覺感 ^^"

以下的圖可點擊後放大哦~~~

(進入 psql 並使用 \l 查看資料庫列表)


(psql --help 的可用參數說明)


(\h +上 SQL 命令可以讓您查看和學習命令的用法)


(完整的 psql \? 可以顯示全部的特性給您參考)



延伸閱讀(Link):

2008-01-03

phpPgAdmin 4.2 中文語系檔完成 100%

更新:2007-01-03
對映章節:

內容:
感謝本社群 李飞 投入簡體中文語系的製作,
您可以在 phpPgAdmin 國際官網 CVS 中
下載剛完成不久的正體與簡體中文的語系檔,
4.2 版隨著 PostgreSQL 8.3 的到來,
增加了"全文檢索(Full-Text Search)"的功能管理介面 ....

http://phppgadmin.cvs.sourceforge.net/phppgadmin/webdb/lang/

phpPgAdmin 4.2-Beta-1

Released: 17th-December-2007


並預告目前小郭正進行著
PostgreSQL JDBC Driver 中文語系檔與
PostgreSQL psql 終端機介面中文語系的翻譯工作中 ...
歡迎您的協助與加入團隊 ...

延伸閱讀(Link):

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)