保存MySQL服務器實例的windows服務的默認名稱是'MySQL'。但是MySQL 5.5允許用戶在安裝後爲其指定任何名稱。現在我需要知道MySQL的Windows服務的名稱,但我不明白我的應用程序應該在哪裏尋找這個名字。我試圖特別讓這個名字不尋常,然後找到MySQL將它存儲在系統中的位置。但這個不尋常的名字只在Windows註冊表的服務列表中。 my.ini,my-huge.ini和MySQL服務器的其他ini文件不包含有關如何命名windows服務的信息。那麼MySQL在哪裏存儲這個名字? Windows版本:7 X86/X64,MySQL版本:5.5。 在此先感謝。查找MySql服務器實例的windows服務名稱
回答
MySQL不需要在任何地方存儲這個名字。服務器進程由Windows服務控制器啓動,客戶端通過網絡與服務器進行通信,因此它不需要知道名稱。正如您發現的,唯一出現的位置是註冊表中的服務列表。考慮到在Linux上,守護進程不像Windows服務那樣有特殊的名稱。服務名稱是在Windows上運行的工件,MySQL不知道或關心它。
MySQL的新手,我遇到了同樣的問題。我做了什麼來解決此設置實例shared_memory_base_name相同的服務名稱在ini:
# shared_memory
shared_memory_base_name=MySQLServiceName
這使得通過系統變量@@ shared_memory_base_name可用它。我實際上不啓用共享內存連接,只需設置變量。
我還沒有在Linux上試過,雖然也許設置@@ socket系統變量可以提供相同的功能。
我意識到這是一個有點晚來幫助你了,但有人可能會發現它很有用...
如果你不知道答案問你的意見成cooment ...不正確的新答案 –
它存儲在註冊表中。 MySQL實例配置嚮導讀取包含名稱以及對應服務.exe的路徑的註冊表。
但我不完全知道如何以編程方式查找這些註冊表項。
PS:該條目可能可以在這裏找到:
Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MySQL[xy]
(xy爲版本,如:57爲5.7)
服務名被存儲在這裏鍵 「顯示名稱」 和「ImagePath」中的.exe路徑。
注意:這些路徑也可能包含啓動參數,如my.ini文件的路徑。
- 1. 查找域的名稱服務器
- 2. CloudWatch EC2 - 查找EC2服務器的實例ID和實例名稱
- 3. Windows服務器名稱服務器系統的核心
- 4. 如何找到SQL服務器的服務器名稱
- 5. *名稱服務器*不是有效的名稱服務器?
- 6. 在Azure中查找服務名稱?
- 7. 如何查找Oracle服務名稱
- 8. 如何找到smtp服務器名稱
- 9. Mysql服務器實例已停止
- 10. MySQL Workbench管理服務器實例
- 11. mysql服務器多個實例
- 12. 什麼是MySQL服務器實例?
- 13. 更新PHP和MySQL服務器實例
- 14. 查找Windows服務的運行進程名稱.NET 1.1
- 15. 在多個域名上查找名稱服務器的腳本
- 16. 根據服務器名稱獲取服務名稱
- 17. 獲取WebSphere應用服務器的實例名稱
- 18. 獲取本地sql服務器的實例名稱
- 19. EC2實例的穩定服務器名稱
- 20. 通過服務的名稱獲取Windows服務的PID
- 21. 與@variable服務器名稱
- 22. 服務器名稱2016
- 23. JBoss服務器名稱
- 24. Domainfactory + heroku名稱服務器
- 25. 自指名稱服務器?
- 26. 獲取服務器名稱
- 27. 服務器名稱自敗
- 28. 名稱服務器轉發
- 29. 連接服務器名稱
- 30. WebSphere應用程序服務器 - 服務器(服務器)的名稱
這是真的,但如果我們在初始指定服務名稱後啓動'MySQL實例配置嚮導',我們可以在嚮導的步驟之一中看到Windows服務的名稱。 MySQL Workbench在「創建新服務器實例配置文件」表單中也知道這個名稱。所以它存儲在某個地方,但不容易找到它。 – Shoar