如同之前我所寫的一些文章所說的,在教學與應用上,我主要都是使用SQL Server來做一些資料庫的應用。不過並不是所有的人都是使用SQL Server來做資料的來源,在許多商業的應用上都會使用開源的資料庫,例如MySql。這一篇文章主要是要說明如何應用ASP.NET連結遠端MySQL Server(其他.NET的程式也是一樣的作法),由於我平常並沒有在用MySQL,所以就先安裝MySQL到我的機器上。下載MySQL Installer安裝MySQL,我是使用376.3M那一個,32bit與64bit的作業系統都可以用

安裝的過程就是一直下一步(呵呵呵),比較重要的是不要忘記自己設定的root的密碼,安裝好後,會安裝好MySQL Workbench,可以用它來管理MySQL中的資料庫。

使用安裝MySQL過程中所設的密碼來進入資料庫管理系統

進入系統後,可先新增資料庫

接下來新增資料表,定義欄位

輸入資料

事實上,MySQL Workbench這個軟體我以前從來沒有用過,不過今天首次使用,在新增資料庫、資料表、定義欄位與輸入資料上完全沒障礙,因為運作的過程跟在Visual Studio中的操作概念流程差不多。關於如何在Visual Studio中新增資料庫、資料表、定義欄位與輸入資料,可參考“ASP.NET網頁程式設計”[全華,張峻彬著],第八章中有詳細說明

完成的資料表後續要用來當測試的資料,接下來安裝MySQL Connector(同樣的,32bit與64bit的作業系統都可以用),這將提供一些物件,方便在.NET Framework架構中使用MySQL

不要忘記,安裝之後搜尋硬碟,把MySql.Data.dll複製到你專案的bin路徑中,以便能使用相關的物件。


寫個ASP.NET來測試一下吧(不要忘記Import相關的Namespace,研究生A,注意這裡的程式寫法,Using...End Using,會自動Close()與Dispose())

首先用本機連結,使用了一個GridView來顯示由資料庫中讀出的資料

接下來,準備測試遠端連結MySQL資料庫。一般來說,要進行遠端連結主要要注意兩件事,一是防火牆中對應的PORT有沒有打開了,一是使用於連線的帳號有沒有從遠端特定位址連線的權限。先來檢查防火牆的設定,打開防火牆的設定,發現在安裝好MySQL時,安裝程式已經自動設定好相關規則了

接下來設定帳號遠端登入的權限

原本的設定值是localhost,也就是說只能由本機連結,可以在這裡設定特定的位址,或是使用%,表示可以由任何位址連上資料庫。將程式中的連結字串改成IP的連法,在另一台機器上測試,可以看到己經可以由遠端連結讀取出MySQL中的資料了

寫完了,咦,忘了玩鋼彈大亂鬥,趕快來玩一下