在上一篇文章中,小弟給各位介紹了下MySQL、MariaDB的過去及現在。從這篇文章起,我們正式開始MariaDB的教學。
檔案下載
講句幹話:使用MariaDB的第一步,要先下載它XD。各位可以點擊這裡,前往MariaDB官方網站的下載頁面。大致的操作流程為點選版本號,接著依自己作業系統及需求下載對應的檔案。
注意事項
說到下載對應自己需求的檔案,我們大概會反射性的去點msi檔。過去在Windows中安裝程式時,各位應該跟小弟一樣載個exe或msi檔爽爽的狂戳下一步吧?如果從主機管理的角度出發,這其實不太好的。因為我們不知道安裝程式到底幫我們做了什麼,以後出問題的時候非常難debug。當然,各位仍能下載msi檔;不過本教學小弟將選擇zip檔,公開一下小弟獨門研究的純手動配置。
另外要注意的,就是MariaDB對Windows作業系統版本的支援了。雖目前主流的Windows作業系統是Windows 10,旦小弟相信不少讀者應該是老系統的丁子戶。因此特幫各位查了下MariaDB的document並經過測試,結果分述於下:
- 如果您是Windows 7的用戶,請下載版本號為10.4.12的MariaDB
- 如果您是Windows XP的用戶,請下載版本號為10.1.13的MariaDB
在接下來的教學中,小弟將以10.4.12版搭配Windows 7 64位元系統來示範。沒有任何特殊需求也不是丁子戶的話,各位儘管選擇標示stable的版本就行。以上特感謝Mingo大大提供公司的老電腦給測試!
資料庫系統安裝開始
第1步:解壓檔案
首先請各位把壓縮檔裡的檔案全部解壓。這個地方沒有特別要注意的,只要這些檔案獨立存在一個資料夾中且它們的路徑方便您操作就行。以小弟為例,小弟將它們放在「C:\MariaDB」這個目錄下。
第2步:設定環境變數
請各位將剛剛解壓的檔案中一個叫bin的目錄加入系統環境變數,這麼做我們將可在命令列介面執行MariaDB的指令。以小弟的環境為例,小弟的path環境變數要多加一個「C:\MariaDB\bin」。
第3步:以指令建立資料庫檔案
這一步有人要做,有人可能不用做。請各位檢察檢察解壓縮的資料夾裡是否有個data目錄,有的人請直接下一步。
沒有的人請注意了,我們現在要來建立資料庫系統運作時的所需檔案。這些檔案預設會放在我們解壓縮路徑下的data資料夾,以小弟為例的話就是「C:\MariaDB\data」。請以系統管理員身分開啟命令提示字元,並在命令列介面下指令「mysql_install_db --datadir=C:\MariaDB\data」。以下貼出小弟執行指令後系統顯示訊息的經過。
C:\>mysql_install_db --datadir=C:\MariaDB\data
Default data directory is C:\MariaDB\data
Running bootstrap
2021-08-13 9:38:56 0 [Note] C:\MariaDB\bin\mysqld.exe (mysqld 10.4.12-MariaDB)
starting as process 4296 ...
Removing default user
Creating my.ini file
Creation of the database was successful
C:\>
只要看到類似「successful」的提示後,資料庫檔案就全部建立完成了。各位可以看一下剛剛解壓縮的目錄,裡面應該多了個data資料夾。請千萬不要任意修改或移動data資料夾裡的檔案,以免造成錯誤。
第4步:設定資料庫編碼
一般來說至此資料庫系統已可正常執行。不過因為MariaDB預設支援的編碼為Latin1,使用非英文資料儲存、顯示及下指令會發生亂碼。在開始使用之前,我們得先把系統所有的編碼設定弄成號稱MariaDB專用的高效萬國碼utf8mb4。
一般來說在data資料夾中應該會有個my.ini檔案,沒有的人請以純文字編輯器自行建立。我們的編碼設定直接寫進去就行了。如果my.ini檔已存在,內容大致上應該是這樣的。
[mysqld]
datadir=C:/MariaDB/data
[client]
plugin-dir=C:/MariaDB/lib/plugin
因為小弟放置資料庫的路徑為「C:\MariaDB」,各位打開設定檔後可能會看到跟上面不一樣的路徑設定值。不過這完全不礙事,請在內容添加編碼設定並存檔。像下面這樣。要特別注意的是,自行建立檔案的各位請把路徑修改成您解壓縮的路徑。
[mysqld]
datadir=C:/MariaDB/data
character-set-server=utf8mb4
[client]
plugin-dir=C:/MariaDB/lib/plugin
default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4
第5步:啟動資料庫
弄了大半天終於可以來啟動MariaDB了。請先以系統管理員身分執行一個命令提示字元,並下指令「mysqld」。
C:\>mysqld
此時MariaDB已經啟動,我們現在能透過命令列或任何有支援MySQL/MariaDB的程式語言(php、Python、NodeJS)對它連線。
在這邊我們以命令列來操作,請再以管理員身分打開另一個命令提示字元並下指令「mysql -uroot」。
C:\>mysql -uroot
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 9
Server version: 10.4.12-MariaDB mariadb.org binary distribution
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
看到如是訊息就表示我們連線成功了,下指令「\q」或「exit」退出。
MariaDB [(none)]> exit
Bye
C:\>
接著關閉所有命令提示字元,徹底結束MariaDB。
第6步:把MariaDB安裝成Windows服務
到這邊大概會有高手問:我每次要啟動MariaDB都要先開個命令列下「mysqld」指令,還要再開第二個command-line下「mysql -u 'root'」指令真不方便。MariaDB能否裝成服務,它在我開機時自己在背景啟動?當然可以,開發MariaDB的那群大牛已經幫我們想到這個問題了。
以上設定都確認沒問題後,請以管理員身分執行命令提示字元。執行指令「mysqld --install」,接著再執行指令「net start mysql」,如果系統有提示啟動成功就ok了。當要把背景執行中的MariaDB關閉做些設定,指令是「net stop mysql」。更凶猛的是,從現在開始我們一開機它就會自己跳起來工作並等待我們去連線了。
記得有次小弟跟研究所的同學討論到MariaDB這個部分的內容時,有人開嗆:你現在用的是MariaDB,下什麼怪指令「net start mysql」?小弟因此學到我們安裝服務的指令可以是「mysqld --install MariaDB」或任何各位爽用的名字,開關指令分別變成「net start MariaDB」以及「net stop MariaDB」。
最後如果哪天各位要更版或砍掉這個服務,指令為「mysqld --remove」。當初如果有指定自己爽用的名字(如MariaDB),指令為「mysqld --remove MariaDB」。也提供給各位。
迷之音:唉有!你們這些傢伙也太吹毛求疵,哥能用就好了啊!算了,以上就是要基本使用MariaDB的全部安裝步驟。從下篇文章起,我們正式進入MariaDB基本觀念、常用指令和SQL語法的部分。