顯示包含「Linux」標籤的文章。顯示所有文章
顯示包含「Linux」標籤的文章。顯示所有文章

2013年11月12日星期二

自製記帳軟件 - 簡易安裝 CentOS 6.4 及 MySQL


說了那麼多不著邊際的東西, 這一次就實實在在的跟大家講解一下 CentOS 6.4 的安裝過程吧. 上圖就是這次的主角: 2005年出廠的 Lenovo ThinkPad Z60T. 看著那個 IBM 商標, 總想起一句很經典的歌詞: "變幻原是永恆". 不過話說回來, ThinkPad 的工藝真是好. 好像這圖中的電腦, 她跟了我八個年頭, 除了電池壞了以外, 其他機能都仍然能夠好好地運作. 而且在這次作示範機器之前, 她作為一台 BitTorrent Client 日夜不停的運行了四年 (OS 是 Ubuntu), 為我們這幫遊子提供了大量的娛樂.

回歸正題, 要安裝 CentOS, 首先你要去 CentOS 網頁下載 CD 或 DVD 的 ISO 檔.
可供下載 CentOS ISO 的 Mirror Sites 列表
如果你的網絡連線不高, 我建議你使用 Torrent 來下載完整的 ISO 檔. 完成後, 就要把那剛下載好的 ISO 檔燒錄到 CD 或 DVD. 在 Windows 7 Professional 中只需以滑鼠右鍵點選 (Right Click) 要燒錄的 ISO 檔, 再選擇 Burn Disc Image (如下圖), 然後一步一步根據指示便可成功製作 CentOS 的安裝 CD 或 DVD.


 如果你的 Windows 版本沒有這個內建功能, 那你就要自己在網絡上下載一個來燒了.
"FREE ISO BURNER" 在GOOGLE 上的搜尋結果
把 CentOS ISO Disk 1 放進要安裝的電腦內, 重啟電腦後應該不久就會看到如下圖的畫面. 如果你的電腦沒有讀取 ISO Disk, 那你需要到BIOS 中把 CD/DVD-ROM 的 Boot Sequence 改排在 HDD 之前, 儲存設定後再重啟電腦即可.


選 "Install or upgrade an existing system"


充滿外星文的過場畫面


選 "OK" 系統會先檢查你的安裝安裝 CD 或 DVD 有沒有缺憾;
選 "Skip" 則系統會直接開始安裝. 


歡迎! 歡迎! 


除了 "NEXT" 外, 我們還有什麼選擇? 那就按下去吧!


強烈建議選擇英文! 


選擇 Basic Storage Devices 


如果你不是從 CentOS 以往的版本升級, 請選擇 Fresh Installation


如無必要就不要改了


這個請根據你的真實所在地或網絡內 (LAN) 的其他電腦的地區設定選擇時區


設定 "root" 的密碼

請不要忘記這組密碼! 還有, 記著這個 "root" 是作業系統內的擁有最大權限的戶口


如果你無需保留電腦內的其他作業系統, 選 "Use All Space" 吧


這個畫面只會在你有多於一個硬碟 (HDD) 時才會出現.

如果你的電腦內安裝了兩個硬碟, 而你又把他們全都移到右邊, 那在 CentOS 安裝完成之後你不會看到兩個分開的硬碟 (即是好像 Windows 內的 "C:" "D:" 等), 而是不同的 Folder. 

這代表你不可以隨便的移除硬碟, 因此你要在決定前好好考慮.


按了後就沒有回頭路了...


點選 "Desktop" 及勾選 "Customize now"


點選 "Database" 內的 "MySQL Database client" 及 "MySQL Database server"


終於接近尾聲了


再一次歡迎


建立第一個使用者. 要留意的是這個使用者不是 "root".

根據所有有關 Linux 的文件, 都強烈地呼籲用家不要用 "root" 來作日常工作之用, 現在大部份的 Linux distributions 都是在安裝時要求用家先設好 "root" 的密碼, 然後在安裝後的設定階段強迫使用者建立一個有限權限的使用者戶口. 


讓 Server 的時間準確是很重要的事, 所以請勾選 "Synchronize date and time over the network"

除了 Server 的時間要準確外, 讓整個網絡內 (LAN) 電腦的時間統一也很重要啊. Windows 系統內也有差不多的功能, 把所有電腦都指向同一組 NTP Servers 吧.


做個乖孩子, 什麼也不要碰! 繼續下一步...


這時系統會要求重啟電腦, 乖乖的按指示做吧


"人在風暴中, 無奈的打轉..."


登入吧! 菜鳥! 


請按圖索驥...


順字母找出 "mysqld", 然後按上方的 "Enable"


還記得那個 "root" 的密碼嗎? 輸入到空格內吧


"Enable" 了便 "Start" 吧


留意右邊的 Service 狀態:
"This service is enabled" 及 "This service is running"


請再一次按圖索驥...


乖, 我輸入什麼, 你就跟著輸入, 然後按 "Enter" 


如果你看到上述畫面, 恭喜你! 你已經安裝了一台運行著 MySQL 的 Linux 機器了!
現在輸入 "exit" 及按 "Enter" 退出吧

要是你沒有看到上述畫面或出現任何錯誤訊息, 請先確定 "mysqld" 這個 "Service" 是不是已經 "enabled" 及 "running". 如果你的答案是肯定的, 那先重啟一次電腦. 要是重啟後還是不成, 那就從第一步開始再試吧. 對於未接觸過 Linux 的朋友, 上網找資料參考所花的時間必定比重灌一次多啊, 而且未必可以解決你所遇到的困難.

下一篇將會是安裝 MySQL Workbench 6 的, 希望大家會留意吧.

2013年9月2日星期一

自製記帳軟件 - 工具


唐吉訶德的馬盾與矛
決定了要自製記帳軟件之後, 就要面對用什麼樣的工具來完成這個"唐吉訶德"式的壯舉. 畢竟唐吉訶德再荒唐也有一匹瘦馬, 一面皮盾, 和一支長予

"En un lugar de la Mancha, de cuyo nombre no quiero acordarme, no ha mucho tiempo que vivía un hidalgo de los de lanza en astillero, adarga antigua, rocín flaco y galgo corredor." - Don Quijote de la Mancha

在 "自製記帳軟件 - 原因" 中已經簡單地說了罐頭式軟件的幾種主要限制: 彈性, 分工及版權. 為了要避免這幾種限制, 在決定工具前我花了不少時間去研究十多個廠商的開發軟件及資料庫伺服器的功能, 特性及版權. 在兼顧了自己的開發能力, 輔助工具, 價格及普及性後, 我決定了以Microsoft Access 及 MySQL Community Server 作前店後居式的配搭來開發自家製的記帳軟件.

前店
我知道很多IT人對 Microsoft Access 都是不屑一顧, 但是我選擇的原因是它可以大幅度減輕我開發的負擔, 尤其不用跟DLL打交道, 就已經功德無量, 更不用提它簡單的報表(Report)設計系統了. 另方面 Microsoft 一直很負責任地提供 Microsoft Access Runtime 給用戶免費下載, 令到在分發及佈署在客戶端時更方便容易. 當然 Microsoft Access 都有它的不足之處; 第一, 它是一個檔案式的資料庫管理系統; 第二, 資料檔容易損壞. 雖然有如此重大的缺點, 但是用作使用者介面(不儲存資料), 它的內建功能是可以讓我相對而言輕鬆地完成任務.

後居
選擇 MySQL Community Server 是一個折衷的方案. 自Oracle 於2009年收購並將 MySQL 納入為旗下產品線後, 開源社區便一直擔心 MySQL Community Server 會逐漸被 Oracle 遺棄. 有見於此, Michael Widenius 於2009年推出了MariaDB, 一個完全與MySQL相容的開源資料庫管理系統 (海豚對上海獅). 那為何我還是選擇以MySQL來開發呢? 因為 Oracle 提供了豐富的免費工具如MySQL Workbench等, 讓我可以更直覺地設計 Schema. 換句話說, 因為我懶...

後居的居所
MySQL Community Server 雖然叫伺服器, 但是它並不是一個完整的作業系統, 所以要找一個作業系統如 Microsoft Windows 來讓它住進去並提供服務. 但是為了省錢又要穩定, 我最後選擇了CentOS, 一個 Red Hat Enterprise Linux 的開源版, 來作這個"後居的居所". 等等! Linux 不是很複雜的嗎? 呵呵,  十年前 Linux 可能是很複雜很難上手, 但是現在各個 Linux Distributions 已經非常之 Down to the Earth 了. 如果有興趣的可以從 Ubuntu, Fedora, 及 CentOS 等 Distributors 下載他們的 Live CD ISO, 然後燒成開機光碟, 再插入電腦內後享受一下非視窗系的另類風格. 但小心不要按了 Install to Hard disk 的選項, 除非你知道自己在幹什麼...

聲明: 文中所提及的商標及產品名稱均屬其版權及商標持有人.