回首頁
修改
Mail
FTP

中




2008年2月21日 星期四

[資料庫]MYSQL_PHP_Apache 介紹

PHP5 系統環境安裝 Windows XP+PHP+Apache (一)

MySQL:網站開發者的新選擇

Web2.0時代很多人都使用免費的Mysql做為資料庫的解決方案,但是Mysql卻不像MSSQL或Oracle那樣有完整的GUI介面來管理,大家似乎也都很習慣使用架構在php上的phpmyadmin來作為Mysql的管理介面,但如果不是以php(Ex:RoR)來開發整個Web app的話這個管理模式就行不通了,我個人都習慣使用HeidiSQL這套免費軟體來管理Mysql資料庫。

以下為官網所指出的主要功能:
# generate nice SQL-exports
# synchronize tables between two databases
# manage user-privileges
# import text-files
# export table-data as CSV, HTML and XML
# browse and edit table-data using a comfortable grid
# batch-insert ascii or binary files into tables
# write queries with syntax-highlighting (next version will have also code-completion)
# monitor and kill client-processes

API 翻成中文是 應用程式介面,Windows API 目的是完成 Windows 系統內建的基本服務,你也可以稱他為系統函數庫,跟傳統 DOS 插斷服務類似,屬於作業系統層級
最早是特指 Windows 內建的系統函數庫,現在很多都拿來用,所以你可以當成是函數庫
SDK 是 軟體發展工具,K 就是 Kit縮寫,就是工具組。
最早也是指 Windows 內建的系統函數庫,早期,在 MS C 5/6/7 (1988 ~ 1993) 要在 DOS 下寫 Windows 程式只能使用 SDK 來實作,直到 MS C 7 推出 MFC 1.0 後,開發 Windows 程式才變的輕鬆。現在已經變成 API 的說明書。

由於用法混亂,假設你同時看到這三個名詞,你可以這樣去分別:

1.API 為函數庫,你要直接控制某硬體或軟體時,需要使用
2.SDK 為說明書,說明 API 如何呼叫、如何使用
3.KIT 為工具組,可能有現成的範例或簡易工具,讓你不用寫程式也可以初步控制硬體。



為了因應日新月異的資料庫技術,有相對多的軟體工程師也逐漸的從桌面資料庫軟體,諸如 Microsoft Access 以及 SQL Server,改為採用 MySQL。雖然嚴格說來,MySQL 並非 SQL Server 的對手,許多服務提供商也都支援 MySQL,並視之為便宜而有效率的代替品。


sql server 只用引擎不用錢 但有2g的流量限制


考慮使用 MySQL 的原因

如果你要找的是可靠的資料庫軟體,以便支援你網站開發的工作,那麼以下的原因說明了為什麼你應該考慮 MySQL:



它便宜(通常是免費)。

它的網路承載比較少。

它經過高度最佳化(Highly Optimized)。

應用程式透過它做起備份來比較簡單。

它為各種不同的資料格式提供提供彈性的介面。

它較好學,且操作簡單。

它標榜的是,你負擔得起的客戶支援。

$$$

簡單的說,你不會找到比 MySQL 更便宜的了。事實上,對大多數用戶來說,MySQL 是免費的。有時候是要付出一小筆 授權費, 但是這個付費規定只限於以下兩種情況:

以內嵌(embedded)的方式使用 MySQL 伺服器

只使用 MySQL 的商業用途軟體

例如,Windows 版本的 MySQL 伺服器,需有授權執照。然而,只要付比美金 $200 元多一點點的費用,MySQL 還是比其他任何資料庫軟體來得容易負擔多了。

避免網路壅塞

針對多個使用者共同存取的支援,Access 根本不是 MySQL 的對手。Access 在大約十五個使用者連上來的時候,就輸掉了。我們還聽過當只有五個人連上來時, 會有一些問題。這並不是說,只有五個人能夠同時連上由 Access 支援的網站。同時連結(Simultaneous connection)事實上是指多工處理(concurrent process)。因此,事實上 Access 可以處理的連結數目是無限制的,只要那些連結保持在多工處理的範圍限制內。對於唯讀網站(這些網站並非你想像中的少數)它可以支援最多到 255 個使用者。而較大的網站,則無可避免的必須升級到 SQL Server 以提高穩定度和效率。



相對說來,MySQL 內定最大連結數為 100 個使用者。但是,我們絕對不可以用一個程式的內建設定來判斷它的效能。到目前為止,我們還沒聽過依賴 MySQL 的較大且使用頻繁的網站上的使用者有任何抱怨。除此之外,縱使有網路上有大量資料往來,似乎並不會對查詢最佳化(query optimization)有多大的影響。



在 Windows 98 作業系統上使用相同的硬體跟檔案大小,MySQL 表現得比 Access 2000 還要快 -- 只是並非所有的情況下都是如此。 這兩者在資料更新方面的效能,有著最大的差異。同樣的資料更新,Access 要花上兩倍的時間。如果是在高速系統上做小量資料的處理,你不會去注意到這兩者間的差異。 只有在處理的是幾十萬筆資料的時候,這效能上的差異才會比較明顯。MySQL 只在處理資料庫物件(object structure)的時候,才會輸給 Access。 當建立表格(table) 以及索引的時候,MySqL 會將表格鎖住,如此一來會將導致正在進行的大量資料處理速度慢下來。然而以上所提的第二個問題在網站開發時,一般並不會造成困擾。 因為網站上面,我們所重視的是用戶來訪時,查詢的速度,而非資料儲存架構本身。因此,在這個領域,MySQL 算是勝出。






0 回應: