劉小華 方莉 王奇志
網(wǎng)絡(luò)數(shù)據(jù)庫教學(xué)中虛擬技術(shù)的應(yīng)用研究
劉小華 方莉 王奇志
針對傳統(tǒng)教學(xué)方式的缺陷,擬將虛擬機技術(shù)應(yīng)用到網(wǎng)絡(luò)數(shù)據(jù)庫教學(xué)和實踐環(huán)境的構(gòu)建中,通過2個平行班級的試驗比較證實其對網(wǎng)絡(luò)數(shù)據(jù)庫課程教學(xué)效果的提升作用。
虛擬技術(shù);網(wǎng)絡(luò)數(shù)據(jù)庫;SQL Server
網(wǎng)絡(luò)數(shù)據(jù)庫有別于Access、Foxpro等集中式數(shù)據(jù)庫的最大特點就是其基于一個網(wǎng)絡(luò)的平臺,因此對于這門課的教學(xué)需要配置相關(guān)的網(wǎng)絡(luò)環(huán)境,在網(wǎng)絡(luò)環(huán)境下去完成數(shù)據(jù)庫項目的開發(fā)教學(xué)和實踐。在傳統(tǒng)的教學(xué)模式下很難達到這個要求,隨著虛擬技術(shù)的發(fā)展,該技術(shù)被逐漸應(yīng)用于教學(xué)領(lǐng)域,如創(chuàng)建虛擬設(shè)備、虛擬課堂、虛擬實驗室以及虛擬校園。本文就虛擬機在網(wǎng)絡(luò)數(shù)據(jù)庫教學(xué)中的應(yīng)用做些探索性研究。
圖1 客戶機/服務(wù)器體系結(jié)構(gòu)
目前構(gòu)建基于3層架構(gòu)(B/S模式)的網(wǎng)絡(luò)數(shù)據(jù)庫應(yīng)用程序已成為一種趨勢(如圖1)。該架構(gòu)由表示層、業(yè)務(wù)層和數(shù)據(jù)層組成,分別由瀏覽器、web服務(wù)器、數(shù)據(jù)服務(wù)器來實現(xiàn)。
針對這種架構(gòu)的網(wǎng)絡(luò)數(shù)據(jù)庫的傳統(tǒng)教學(xué)方式在構(gòu)建環(huán)境時,教師機往往3層全都部署在一臺電腦上,這樣雖然不影響教學(xué)內(nèi)容的傳授,但是這種方式的教學(xué)沒有把應(yīng)用程序的3層結(jié)構(gòu)很好地展現(xiàn)出來,忽視了網(wǎng)絡(luò)數(shù)據(jù)庫基于網(wǎng)絡(luò)平臺的特性,導(dǎo)致沒有一定基礎(chǔ)的高職生在學(xué)期快結(jié)束時向老師提出“老師,網(wǎng)絡(luò)數(shù)據(jù)庫跟vfp數(shù)據(jù)庫有什么區(qū)別”的荒唐的問題。同時,這種方式也將3層結(jié)構(gòu)間相互聯(lián)系的技術(shù)環(huán)節(jié)淡化以致隱藏,使得學(xué)生對程序開發(fā)的關(guān)鍵技術(shù)把握不夠,從而影響后期的項目開發(fā)。另外,在實驗實訓(xùn)教學(xué)環(huán)節(jié),環(huán)境的架設(shè)雖然可以按3層構(gòu)建,但鑒于實驗室的統(tǒng)一管理以及電腦數(shù)量的限制,所以最終也是將3層部署在一臺機器上,使得在項目實訓(xùn)上不能模擬真實的開發(fā)環(huán)境。最后,在真實機上演示和實踐安裝部署開發(fā)環(huán)境時,由于環(huán)節(jié)比較繁瑣容易出現(xiàn)失敗,這勢必影響學(xué)生對這部分技能的掌握。傳統(tǒng)的教學(xué)方式帶來的結(jié)果是教師往往把教學(xué)的重心放在純粹的數(shù)據(jù)庫開發(fā)和管理本身,而不是將其置于3層架構(gòu)的大背景下去教授,削弱了整個開發(fā)流程的掌握程度。
1.虛擬技術(shù)簡介。
借助虛擬化可以在單臺物理機上運行多個虛擬機,每個虛擬機都可以在多個環(huán)境之間共享同一臺物理機的資源。不同的虛擬機可以在同一臺物理機上運行不同的操作系統(tǒng)以及多個應(yīng)用程序。
目前常用的虛擬機主要有 VMware和 Virtual PC。Virtual PC操作簡便,但其功能沒有VMware強大。VM-ware采用固定內(nèi)存分配,占用資源大,但進入虛擬系統(tǒng)后,操作時的速度卻明顯比VPC快得多,這是由于VM-ware調(diào)用了更多的真實的系統(tǒng)配置!而且它完美支持Linux,其獨有的“快照”功能,提供了便捷的軟硬件測試環(huán)境切換,其“捕捉屏幕”和“捕捉視頻”功能,是交流學(xué)習(xí)的有用工具,這些都是Virtual PC所沒有的。本文就是利用VMware桌面虛擬化產(chǎn)品VMware Workstation來構(gòu)建網(wǎng)絡(luò)數(shù)據(jù)庫的教學(xué)和實踐環(huán)境。
2.VMware Workstation在網(wǎng)絡(luò)數(shù)據(jù)庫教學(xué)上的應(yīng)用。
(1)方便演示真實的3層架構(gòu)的網(wǎng)絡(luò)數(shù)據(jù)庫應(yīng)用程序。鑒于網(wǎng)絡(luò)數(shù)據(jù)庫基于網(wǎng)絡(luò)平臺的特性,運用VMware Workstation軟件創(chuàng)建2個虛擬機,分別擔(dān)任web服務(wù)器和數(shù)據(jù)庫服務(wù)器角色,利用物理主機充當(dāng)客戶端,模擬一個具有3層架構(gòu)的網(wǎng)絡(luò)數(shù)據(jù)庫應(yīng)用程序的運行環(huán)境,把表示層、業(yè)務(wù)層和數(shù)據(jù)層分開部署,使得3層結(jié)構(gòu)清晰地展現(xiàn)在學(xué)生的面前。
(2)幫助學(xué)生把握數(shù)據(jù)庫開發(fā)的關(guān)鍵技術(shù)。有了一個真正的3層結(jié)構(gòu)環(huán)境,結(jié)合項目通過演示、講解、實踐,讓學(xué)生了解層間聯(lián)系的技術(shù)環(huán)節(jié),比如業(yè)務(wù)層是如何通過網(wǎng)絡(luò)去連接后臺的數(shù)據(jù)庫的,幫助學(xué)生掌握開發(fā)的關(guān)鍵技術(shù)。
(3)解決實驗室硬件條件的限制。構(gòu)建一個專門的網(wǎng)絡(luò)數(shù)據(jù)庫實驗室不是不行,但在管理和配置上都比較麻煩,采用VMware Workstation軟件在一臺機器上實現(xiàn),可以讓每個學(xué)生獨享一個真正的3層架構(gòu)的實驗環(huán)境。另外也方便了實驗室的管理工作,加速實驗環(huán)境的配置。
(4)快速靈活地部署和恢復(fù)基于多平臺的多層應(yīng)用程序運行環(huán)境。3層架構(gòu)環(huán)境的架設(shè)比較復(fù)雜,需要有相關(guān)的組件和軟硬件的支持,包括操作系統(tǒng)平臺的選擇和.NET框架安裝,在部署時很容易出現(xiàn)問題。通過VM-ware Workstation軟件創(chuàng)建的虛擬機,可以隨時靈活地演示整個環(huán)境的部署配置過程,而不影響物理機的運行,學(xué)生在實踐時也不會受到實驗室及時還原功能的影響了。利用VMware Workstation的快照功能,在部署失敗時可以快速地恢復(fù)到一個原始的“純凈”狀態(tài)。
1.系統(tǒng)架構(gòu)的確定。
網(wǎng)絡(luò)數(shù)據(jù)庫教學(xué)實驗環(huán)境采用IE 8.0+ASP.NET 2.0+SQL SERVER 20053層架構(gòu)技術(shù),表示層、業(yè)務(wù)層和數(shù)據(jù)層的操作系統(tǒng)平臺分別選擇Windows XP、Windows Server 2008、Windows Server 2003。主機安裝 Windows xp,在虛擬機Windows Server 2008上安裝Visual Studio 2005,虛擬機Windows Server 2003上裝SQL Server 2005。
2.VMware Workstation軟件的安裝和配置。
(1)系統(tǒng)的需求。安裝時,我們應(yīng)重點考慮內(nèi)存的容量,因為要在主機上再運行2個操作系統(tǒng),加上主機等于是3個系統(tǒng)同時在運行,所以需要足夠的內(nèi)存支持,目前標(biāo)準(zhǔn)配置2G可以運行,但為了運行速度流暢點,建議配4G。
(2)安裝和配置。像安裝其他軟件一樣,運行setup.exe或者下載的安裝文件,采用默認(rèn)的方式安裝就行了。裝好后,會發(fā)現(xiàn)主機多了3個虛擬網(wǎng)卡,分別對應(yīng)3種虛擬網(wǎng)絡(luò):
Bridged(橋接)——讓客戶機操作系統(tǒng)直接訪問外部以太網(wǎng),客戶機在外部網(wǎng)絡(luò)中必須有自己的IP地址。
NAT(網(wǎng)絡(luò)地址轉(zhuǎn)換)——讓客戶機的操作系統(tǒng)使用主機的IP地址訪問主機的撥號或外部以太網(wǎng)絡(luò)連接。
Host Only(僅主機)——連接客戶機操作系統(tǒng)到主機上的私有虛擬網(wǎng)絡(luò)。
3層架構(gòu)所在的系統(tǒng)在真實的環(huán)境里都處在公網(wǎng),均有獨立的IP,因此為了模擬這樣的環(huán)境我們采用Host Only網(wǎng)絡(luò),將3臺機器的網(wǎng)卡配置為同一網(wǎng)段的IP。借此保留主機連接Host Only的虛擬網(wǎng)卡,關(guān)閉其他2個虛擬網(wǎng)卡。可以啟用虛擬網(wǎng)絡(luò)里的DHCP服務(wù),讓其為3臺機器的虛擬網(wǎng)卡分配同一網(wǎng)段的IP,同時將主機虛擬網(wǎng)卡IP設(shè)置為自動分配。
3.虛擬機的安裝和配置。
(1)選擇新建虛擬機類型。打開VMware Workstation,新建虛擬機。雖然VMware提供了“Typical”典型的制作方式,但在使用中發(fā)現(xiàn)此種方式并不好,一個主要的缺點就是無法調(diào)節(jié)硬盤空間的大小,因此還是建議大家使用“Custom”自定義制作方式。
(2)選擇操作系統(tǒng)的類型。是通過下拉列表來選擇,列表中包含了Windows發(fā)表以來的所有版本,還有DOS和Linux等等。這里選擇Windows。
(3)指定系統(tǒng)的名稱以及存放的位置。這里改為Windows Server 2008,根據(jù)需要修改文件存放的位置。
(4)定義內(nèi)存的大小。內(nèi)存的大小是可以調(diào)節(jié)的,默認(rèn)的是根據(jù)你所選系統(tǒng)決定的,可以根據(jù)物理內(nèi)存的容量合理分配虛擬內(nèi)存。
(5)網(wǎng)絡(luò)連接方式的選擇。根據(jù)上面的分析,這里同樣選擇Host Only。
(6)硬盤類型以及空間的選擇。這里同樣有多個選擇:建立新的虛擬硬盤、使用現(xiàn)有的虛擬硬盤和創(chuàng)建新的物理硬盤。我們選擇建立新的虛擬硬盤。硬盤的空間大小的設(shè)定,默認(rèn)的是4G,這里本著夠用的原則,保證能裝下一個操作系統(tǒng)和所需的軟件便可。建議把“分割磁盤為2GB的文件”復(fù)選框勾上以節(jié)約物理硬盤的空間。
經(jīng)過以上幾個步驟,基本上完成了一個虛擬機的創(chuàng)建和設(shè)置,可以采用同樣的方法創(chuàng)建第二個機器Windows Server 2003,接著把虛擬機的虛擬網(wǎng)卡IP地址設(shè)為自動分配。
4.虛擬機操作系統(tǒng)和應(yīng)用軟件的安裝。
啟動虛擬機就相當(dāng)于啟動物理機器,可以設(shè)置CMOS,更改啟動方式,因此操作系統(tǒng)和 Visual Studio 2005、SQL Server 2005的安裝跟真實的物理機一樣,這里不再贅述。注意為了改善顯示和鼠標(biāo)功能,裝好系統(tǒng)后還需安裝“VMware Tools”。
選取08計算機應(yīng)用技術(shù)2班和08計算機應(yīng)用技術(shù)3班做對比試驗。2班采用虛擬機技術(shù)構(gòu)造3層架構(gòu)的教學(xué)和實踐環(huán)境,3班采用傳統(tǒng)的將3層架構(gòu)部署在同一臺機器上進行教學(xué)和實踐。這兩個班在專業(yè)、人數(shù)、學(xué)生知識基礎(chǔ)、素質(zhì)因素方面都非常接近,很適合做對比試驗。評價方式主要有考試結(jié)果、實驗、實訓(xùn)、學(xué)生座談、畢業(yè)設(shè)計。評價內(nèi)容包括對數(shù)據(jù)庫基本知識的把握程度、完成項目設(shè)計的水平、對本課程學(xué)習(xí)的態(tài)度等方面。
學(xué)期結(jié)束,通過考核發(fā)現(xiàn):兩個班對數(shù)據(jù)庫操作、表管理、查詢等基本知識的把握區(qū)別不大,但在數(shù)據(jù)庫連接對象的應(yīng)用上2班比3班掌握得好。根據(jù)課堂教學(xué)期間的實驗結(jié)果發(fā)現(xiàn)2班的學(xué)生愛動手、操作熟練,其中對于“SQL Server 2005的安裝與配置”這個實驗2班同學(xué)做的明顯比3班好。項目實訓(xùn)階段的效果顯示:2班的同學(xué)對于實訓(xùn)項目的整體環(huán)節(jié)和流程把握比較好,從設(shè)計到系統(tǒng)的實現(xiàn),思路清晰,進入角色快,而3班的同學(xué)卻感到盲目,很難進入狀態(tài),只知道如何創(chuàng)建數(shù)據(jù)庫,不明白數(shù)據(jù)庫在項目系統(tǒng)里所扮演的角色,另外在系統(tǒng)的實現(xiàn)方面更不如2班同學(xué)得心應(yīng)手。對兩個班同學(xué)開展座談會,結(jié)果表明:3班同學(xué)普遍反映學(xué)這門課不知道有什么用,學(xué)習(xí)目標(biāo)不明確,對于“網(wǎng)絡(luò)數(shù)據(jù)庫跟vfp有什么區(qū)別?”的問題仍然有許多同學(xué)不能解釋清楚;2班同學(xué)學(xué)習(xí)目標(biāo)明確,學(xué)習(xí)積極性強,由于很實用,許多同學(xué)反映很喜歡這門課。畢業(yè)設(shè)計階段,走訪了帶這兩個班的指導(dǎo)老師,了解到的結(jié)果跟實訓(xùn)階段差不多:2班的同學(xué)設(shè)計思路明確、積極主動,3班同學(xué)感到很迷茫。
實驗證明,虛擬技術(shù)的運用對于網(wǎng)絡(luò)數(shù)據(jù)庫的教學(xué)效果的確有很大的提升作用。
[1]文瑞.SQL Server 2005從入門到精通[M].歐陽煒宸,譯.北京:清華大學(xué)出版社,2007.
[2]VMware Corporation.虛擬化概述[OL].http://www.vmware.com/cn/virtualization/virtualization/what- is- virtualization.html,2011,7.
[3]程有娥.基于項目的SQL Server數(shù)據(jù)庫2000數(shù)據(jù)庫管理系統(tǒng)教學(xué)改革[J].職業(yè)技術(shù)教育,2007(26):10-12.
[4]VMware Corporation.Install Workstation on a Windows Host[OL]. http://pubs.vmware.com/ws7_ace26/wwhelp/wwhimpl/js/html/wwhelp.htm?context=ws_user&file=intro_sysreqs_ws.html,2011,7.
On Application of Virtual Technology in Teaching of Web Database
Liu Xiaohua Fang Li Wang Qizhi
For the shortcomings of traditional teaching methods,the article tries to brings virtual technology into the teaching of network database.By comparison of teaching results of two classes,the paper proves that the new method does enhance the efficiency of teaching.
Virtual technology;Network database;SQL Server;VMware workstation
G642.0
A
1672-6758(2012)02-0009-3
劉小華,講師,安慶職業(yè)技術(shù)學(xué)院,安徽·安慶。郵政編碼:246003
安慶職業(yè)技術(shù)學(xué)院教研項目(2011jyxm014);安徽省高等學(xué)校省級教學(xué)研究項目(20100873)
Class No.:G642.0Document Mark:A
(責(zé)任編輯:鄭英玲)