我正在嘗試收集 Windows 上運行的進程的識別資訊。我一直無法發現“mysqld.exe”和“mysqld-nt.exe”二進位檔案之間的差異。有什麼差別,各自提供什麼功能?
謝謝。
答案1
我相信它們是同一件事,即後台服務(又稱守護程序),即 MySQL 程式/介面。
據我了解,「-nt」在 MySQL 版本 5 左右的某個時間點從 Windows 版本中刪除(重新命名為 Mysqld.exe)。
不幸的是,我沒有來源可以引用,但我們的 MySQL 伺服器在其上運行 5.x,而且它們都沒有 mysqld-nt.exe 文件,但我知道我在(遙遠的)過去見過它。
答案2
差異如下:mysqld-nt.exe
MySQL 的一個版本利用了名為命名管道的特定 Windows 通訊協定。
根據這本書
第 23 章第 352,353 頁標題為「23.2 通訊協定」的部分
要點 #3 說
命名管道約定僅在 Windows 上受支持,並且僅當您使用名稱中包含 的伺服器之一
-nt
(mysql-nt、mysql-max-nt)時才受支援。但是,預設情況下命名管道是禁用的。若要啟用命名管道連接,您必須-nt
使用該--enable-named-pipe
選項啟動伺服器。
本書就是這樣呈現的。我認為這是一個錯字。(mysql-nt, mysql-max-nt)
該說的部分(mysqld-nt, mysqld-max-nt)
。儘管如此,使用命名管道可能被用作在 Windows 中進行本機主機連接的替代方法。
我 3 年前在 DBA StackExchange 上寫過一篇文章(MySQL-NT 經常崩潰)討論一個人應該如何擺脫它,特別是因為2011 年 4 月停產。
如果你正在跑步mysqld-nt.exe
並且你不知道--啟用命名管道選項,命名管道未啟用(預設)。因此,mysqld-nt.exe
的行為會完全像mysqld.exe
.我仍然會擺脫它並使用mysqld.exe
.