保生文化祭,歌仔戲 ─ 國光歌劇團 ─ 陰錯陽差

好久好久沒一口氣看那麼多歌仔戲了。小時候外婆就住在一家戲院對面,由於兩位阿媽都住在同村,我幼兒時為了分辨兩者,就稱外婆為「戲園阿媽」。以前鄉下地方的戲院(好像鄉下地方不會有戲院喔Tongue out,我們那裏不一樣,日本時代前比阿公店,也就是岡山人口還多),大部份是演歌仔戲、布袋戲,有時是電影。聽母親回憶(我那時候太小了,我自己只有極少的記憶,或是...該說是印象吧),我那時如果是歌仔戲這種亮晃晃的,我就會大搖大擺走進去看免錢的;如果是放電影,光線暗暗的,我就一下子就走出來了。這裏還有一件好玩的事。我常常這樣大搖大擺進去,有些新來不知道的收票小姐,都會叫:囝仔、囝仔......。想阻止我這個猴死囝仔進去大看霸王戲。這時老闆娘都會說:他是姑婆的孫仔,沒關係啦,讓他進去,這間戲園就像他開的一樣。Cool

 

萬里拳頭石

已經好久沒和 Jeff 一起天還沒亮就出草了。去年六月三十日,夏至剛過,這段時間正是一年中拍日出的好時段,Paco 叔願意帶我們去另一個地點,拍拍一些奇石,所以我們就一堆人一起約約去拍拍,百聞不如一見的萬里拳頭石。

這顆石頭在兩、三年前常常在 DCView 出現,朋友 GSMBOY 早就把它給拍爛了。但是就是一直沒人帶路,所以我只知道它位在萬里海邊,卻一直不知如何前往。原來,它就在萬里和基隆外木山交界附近,我常常去外木山,就不知道多開它個一、兩公里的路就可以抵達。拳頭石離台二線車道不遠,但是如果你想從看得到它的台二線,越過護欄直接殺下去,是做不到的。因為沒路徑可到。或許你想,自己開一條路下去不就成了,只要你去過一次,你就會知道,台二線在這裏的路基是加高的,所以沒階梯你是沒辦法下去的。那入口處在哪呢?居然在半公里前,基隆和萬里交界處,有一個「獅子山公園」,旁邊有一個停車場,就在停車場的西側,有一個濱海步道,就是從那條步道下去。拳頭石等於是一塊浮出水面的礁石,所以即使從步道走過去,到了附近還是得跳石而過,才能抵達它的旁邊拍攝。我們到的時間有點晚,所以剛開始拍,天色就微亮了。

相機:Canon EOS Kiss Digital N

1. Carl Zeiss Distagon 28mm f/2.8 T*

PostgreSQL JDBC 客戶端以 SSL 傳輸資料,以 NetBeans 為例

上次 利用 SSL 讓 PostgreSQL 有一個安全的網路傳輸 談到如何在 PostgreSQL 伺服器端上設定,讓資料通訊能夠以 SSL 加密所要傳送的資料。那篇文章的最後,我留了一個伏筆,不在該篇討論客戶端的連接。那是因為依客戶端的特質的不同,SSL 加密連接的設定方式也就不同,如果要在當時就討論,那麼那篇文章就太過冗長了。PostgreSQL 的客戶端的連接方式很多,如果你用的語言是 C,那麼你可以直接用 libpg 這類的 API 直接連接;用 Java 的,當然得透 JDBC driver (除非你太閒,想證明自己的實力,用 JNI 來寫);如果你用 MS Access,那麼就要用 ODBC 來連接;如果你要用 Visual BASIC.NET、C# 則用 .NET provider......。換句話說,客戶端不同時,SSL 的設定方式就不同。

利用 SSL 讓 PostgreSQL 有一個安全的網路傳輸

如果你的資料庫應用,全都只能讓伺服器本機上的應用程式連線使用,那麼就太過暴殄天物了。RDBMS 原本就是設計來讓多人同時使用的,我們評比一個資料庫系統的良莠,有一個評定的標準就是同時連線的數目,看看這套資料庫管理系統,同時可以服務多少使用者。所以從網路上連上資料庫就變成相當稀鬆平常的應用。但是,一旦資料在網路上傳遞,就有資料外洩的考量。如果你存放的資料不怕被外人窺視也就算了,但是這是不可能的事,一般公司存放在資料庫中的資料,絕對都是機密性高的資料,所以當你的應用程式和資料庫間,一旦有人得以偷窺資料封包時,恐怕資料外洩是勢必難避免的。

那麼,我們所安裝的 PostgreSQL 在網路上傳遞資料的安全性是如何呢?如果是預設安裝,那麼很抱歉,在 FreeBSD 上的 PostgreSQL port 是極不安全的,連密碼都是以明碼的方式在網路上傳遞的。很不幸的,Windows 版本也是。Ubuntu 比較好,預設已把 SSL 支援加上,但是它也有缺點,缺點和 Debian 一樣,改版的速度太過緩慢,慢到會讓人抓狂,尤其是安全性更新。

PostgreSQL 在 FreeBSD 上的大版本升級

唉!升級...升級...升級...這一陣子一直升級,這次輪到 PostgreSQL 大升級。PostgreSQL 不像其它軟體,即使是 8.2 升級到 8.3,也必須大改,所以無法直接用 upgrade 工具直接升。即使是 Windows 版本,也必須勞心費力一番。這次我用 FreeBSD 版本的升級做為例子,來說明最簡單也是最正確的大改版升級步驟。

首先,請先把原本資料庫的資料完全備份下來。如果你是 Windows 的使用者或是 Linux 的使用者,你可以考慮使用 pgAdmin III 的「工具」選單中的「備份」或「備份全域」來做,這樣簡單很多,但是由於 pgAdmin III 的說明太少,我實在看不懂「備份」對話方塊中選項的含意,所以乾脆不用。最正式的方法是使用在 console 下的工具:pg_dump 和 pg_dumpall。兩者的差別在於,前者可以針對某個特定的 database 做備份,而後者一般用來把整個伺服器資料做完整的備份。我建議直接使用 pg_dumpall 比較方便和快速。

利用網路上的範例資料庫來做 SQL 練習

我最早接觸的資料庫工具是 dBase II,那是 1984 年的事情了。但是那時候還在念台北工專,完全沒有資料庫的概念,也不知道這東西有什麼用途,可以用在什麼地方。後來等我出了社會我才知道,事實上我那時一直把它當做試算表來用。後來 dBase III 甚至 Plus 出來,我就沒再碰它了。而且那時 dBase 對 SQL 完全沒支援,由於它的巨集設計得不錯,所以不只是我,我看整個台灣市面根本也把它當成「可以搜尋資料的試算表」來用。一直到了 1994 年我在教高中時,我才因為認識那時識華彩的總經理賴毓敏,在他的介紹下我接觸到 Microsoft Access,這時才讓我真正了解,什麼是資料庫。賴毓敏那時對 Access 相當著迷,雖然當時 Access 只有英文版本,他還是逢人就介紹,甚至用 Access 接專案。不過,在那個 Windows 3.1 的時代,這麼一個小巧的檔案型資料庫,居然可以做到這樣的功能,現在想想,真的很令我驚訝。誰說微軟的原創性不佳?這個產品和 Excel 一直是我認為微軟設計得最棒的兩項產品。

所以我學資料庫的方法和目前很多技術學院的學生的途徑很像,只是我在第二年又碰到一個更新鮮的玩意兒 ─ Microsoft SQL Server 6.5。

[Windows] 如何移除 Windows Messenger 4.7

有很多主題我一直以為我寫過,因為我常把我的網站當成筆記本,我會把常常會碰到的問題和解決方法記載在這裏,以防一旦我的機器遇到不可抗力的損害時,有地方可以查閱。而這個主題是每次當我重灌系統或新裝一台新電腦每次都會碰到的問題,會把這篇補起來是因為老婆她找不到我這篇文章,才讓我驚覺又漏掉一篇重要的筆記,現在就來把它補起來吧。

PostgreSQL 的 Server instrumentation 功能

PostgreSQL 雖然有 pgAdmin III 這個極好用的管理工具,但是 pgAdmin 還是有一些資訊,必須由伺服器本身提供。但是,PostgreSQL server 原本並沒有主動提供這些「系統」資訊到管理界面的功能,所以,就必須再加裝一些擴充模組,讓伺服器擁有提供這些資訊的能力。這個擴充模組叫做 adminpack contrib module,它提供了一些和 pgAdmin 相互交換資訊的功能:

  • 在 pgAdmin 主視窗的「統計情報」頁籤(Statistics tab)中顯示「表空間」(tablespaces) 、資料庫(databases)、資料表(tables)和索引(Indexes)在硬碟裏所占的尺寸大小。
  • 如果伺服器的日誌檔(log files)設定一切很適當的話,在「伺服器狀態」對話方塊(The Server Status dialogue,可以由主功能表的「工具」→「伺服器狀態」叫出)裏會出現「日誌檔」頁籤,而且在這個頁籤可以瀏覽伺服器的日誌檔內容。

PostgreSQL 的簡史

前言 

朋友四位最近在修資料庫相關的課程,剛好教授要他們討論有關 PostgreSQL 這套資料庫,他早就一直聽我在推廣 PostgreSQL,所以誤以為我對它極為熟悉,剛好從 Skype 上看到我上線,就詢問我一些與 PostgreSQL 相關的問題,以及到哪裏可以找到 PostgreSQL 的相關資料,當然最好是中文書籍。

這個問題問倒我了。首先,雖然我從 2000 年開始就接觸 PostgreSQL,但是由於那時 7.x 版才剛出現,所以我的知識大多還留在這時候的 PostgreSQL。當然時序進入 2004/2005 年時,由於 8.0 版釋出,我又花了一點時間研讀了一些 PostgreSQL 的資料,但是這和我為了工作死 K 活 K Oracle 的精神是完全不能相比的。這八年來 PostgreSQL 進步很多,而且不像 MySQL 的進步,有一種令人覺得是疊床架屋的感覺,PostgreSQL 一直就循著既定的 roadmap 穩定的進展。

[Cygwin] 以 syslog-ng 取代傳統 GNU syslogd

在昨天的那篇 如何在 Cygwin 上安裝 Syslogd 中,我曾經提到一般 Unix-like 所採用的是 FSF 提供的 GNU Inetutils,也提到了這個套件的安全上疑慮。所以如果你不想把一堆 r-tools 及 tftp 這些有安全疑慮的工具一起裝進來,那麼最好改用 syslog-ng,意思就是 New Generation syslog,新一代的 syslog。

訂閱文章