在NT家族 (Windows NT,2000,XP,2003)中,建議將MySQL安裝為Windows服務,當Windows啟動、停止時,MySQL也自動啟動、停止。還可以從命令行使用NET命令,或使用圖形Services工具來控制AMySQL服務器。
在Windows控制面板(Windows 2000,XP和Server 2003的管理工具下面)中可以看見Services工具(Windows Service Control Manager)。建議從命令行安裝活卸載服務器時關閉Services工具。這樣可以防止許多錯誤。
安裝MySQL Windows服務之前,應當使用下面的命令先停止當前正運行的服務器:
C:> C:Program FilesMySQLMySQL Server 5.1inmysqladmin -u root shutdown
注釋:如果MySQL root用戶賬戶有密碼,你需要調用命令 C:Program FilesMySQLMySQL Server 5.1inmysqladmin -u root -p shutdown并根據提示輸入密碼。
該命令調用MySQL管理工具mysqladmin,連接服務器并告知它關閉服務。該命令使用MySQL root用戶連接,這是MySQL權限系統中的默認管理賬戶。請注意MySQL權限系統中的用戶完全獨立于Windows下的登錄用戶。
使用該命令安裝服務器
C:> mysqld --install
如果只使用服務器名安裝mysqld時有問題,嘗試使用全路徑名來安裝。例如:
C:> C:Program FilesMySQLMySQL Server 5.1inmysqld --install
你還可以將MySQL bin目錄的路徑加到Windows系統PATH環境變量中:
· 右擊Windows桌面上的My Computer(我的計算機)圖標,選擇Properties(屬性)。
· 然后從出現的System Properties菜單中選擇Advanced(高級)標簽,然后點擊Environment Variables(環境變量)按鈕。
· 選擇System Variables(系統變量)下面的Path(路徑),然后點擊Edit(編輯)按鈕。將彈出Edit System Variable(編輯系統變量)對話框。
· 將光標放到標記Variable Value(變量值)處的文本的后面。(使用End鍵確保光標位于文本的最后)。然后輸入MySQL bin目錄 的完整路徑(例如,C:Program FilesMySQLMySQL Server 5.1in),請注意應使用分號將該路徑與該域內的其它值隔離開。一次關閉該對話框和各個對話框,點擊OK直到打開的所有對話框被關閉。你現在可以在DOS提示符下從系統的任何目錄輸入MySQL可執行程序名來調用MySQL可執行程序,而不必提供路徑名。包括服務器、MySQL客戶端和所有MySQL命令行實用程序,例如mysqladmin和mysqldump。
· 請注意在同一個機器上運行多個MySQL服務器時,不需要在Windows PATH中加入MySQL bin目錄。
警告:編輯系統PATH時必須特別注意;意外刪除或修改已有路徑值會造成系統故障甚至癱瘓。
服務安裝命令不會啟動服務器。在本節后面將給出相關指令。
安裝服務時,可以使用MySQL 5.1中的下面的參數:
· 可以直接在--install選項后面指定服務名。默認服務名是MySQL。
· 如果給出了服務名,后面可以跟一個選項。一般情況,應當為defaults-file=file_name,指定選項文件的名稱,服務器啟動時應當從中讀取選項。
可以使用單個選項代替--defaults-file,但是不提倡這樣做。--defaults-file更加靈活一些,因為你可以將多個服務器啟動選項放入命名的選項文件中。
· 可以在服務名后面指定一個--local-service選項。這樣服務器運行時使用LocalService Windows賬戶,只具有有限的系統權限。該賬戶只適用于Windows XP或更新版本。如果服務名后面同時跟有--defaults-file和--local-service,二者可以按任何順序排放。
對于Windows MySQL服務器,根據下面規則確定服務器使用的服務名和選項文件:
· 如果在服務安裝命令中,沒有在--install選項后面指定了服務名或使用默認服務名(MySQL),服務器則使用MySQL服務名并從標準選項文件的[mysqld]組讀取選項。
· 如果在服務安裝命令中,在--install選項后面指定的服務名不是默認服務名(MySQL)。則從具有相同服務名的組中讀取選項,并從標準選項文件讀取選項。
服務器還從標準選項文件的[mysqld]組讀取選項。你可以使用[mysqld]組中的選項用于所有MySQL 服務,還可以使用具有相同服務名的組,用于該服務名所對應的服務器。
· 如果在服務安裝命令中,在服務名后面指定了--defaults-file選項,服務器只從命名文件的[mysqld]組中讀取選項,忽略標準選項文件。
對于更復雜的例子可以考慮使用命令:
C:> C:Program FilesMySQLMySQL Server 5.1inmysqld --install MySQL --defaults-file=C:my-opts.cnf
該命令中,--install選項后面給出了默認服務名(MySQL)。如果未給出--defaults-file選項,該命令可以讓服務器從標準選項文件的[mysqld]組中讀數。由于提供了--defaults-file選項,服務器只從命名文件的[mysqld]組讀取選項。
還可以在啟動MySQL服務之前,在Windows Services工具中指定啟動參數選項。
MySQL服務器安裝為服務后,Windows啟動時自動啟動服務。還可以從Services工具直接啟動服務,或使用命令NET START MySQL。NET命令忽略大小寫。
做為服務運行時,mysqld不能訪問控制臺窗口,因此看不見任何消息。如果mysqld未啟動,檢查錯誤日志看看服務器是否寫入了顯示問題原因的任何消息。錯誤日志位于MySQL數據目錄中(例如,C:Program FilesMySQLMySQL Server 5.1data),是帶后綴.err的文件。
如果MySQL服務器安裝為服務,并且服務正運行,Windows關閉時自動停止服務。還可以通過Services工具、NET STOP MySQL命令或 mysqladmin shutdown命令手動停止服務器。
如果不想在引導過程中自動啟動服務,還可以將服務設置為手動啟動模式。實現的方法是使用--install-manual選項而非--install選項:
C:> C:Program FilesMySQLMySQL Server 5.1inmysqld --install-manual
要想卸載服務器,如果服務正運行則應首先使用命令NET STOP MYSQL停止服務。然后使用--remove選項卸載服務:
C:> C:Program FilesMySQLMySQL Server 5.1inmysqld --remove
如果mysqld不是服務,可以從命令行啟動它。詳細說明參見2.3.11節,“從Windows命令行啟動MySQL”。
如果在安裝過程中遇到問題,請參閱2.3.14節,“在Windows環境下對MySQL安裝的故障診斷與排除”。