Я пытаюсь собрать идентификационную информацию для процессов, работающих в Windows. Мне не удалось обнаружить разницу между двоичными файлами «mysqld.exe» и «mysqld-nt.exe». В чем разница, и какие функции предоставляет каждый?
Благодарю.
Я считаю, что это одно и то же, фоновый сервис (он же Daemon), который является программой / интерфейсом MySQL.
Насколько я понимаю, "-nt" был исключен из версий Windows (переименован в просто Mysqld.exe) где-то около версии 5 MySQL.
К сожалению, у меня нет источника для цитирования, но наши серверы MySQL работают на 5.x, и ни на одном из них нет файлов mysqld-nt.exe, но я знаю, что видел это в (далеком) прошлом.
В этом и заключается разница: mysqld-nt.exe
был версией MySQL, в которой использовался специальный протокол связи Windows, называемый именованные каналы.
Согласно Книге
Глава 23 Стр. 352,353 в разделе «23.2 Протоколы связи»
Bulletpoint № 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 часто ломается), в котором рассказывалось о том, как от него избавиться, особенно с момента выхода EOL в апреле 2011 года.
Если вы используете mysqld-nt.exe
и не знаете о параметре --enable-named-pipe , именованный канал не включен (по умолчанию). Поэтому mysqld-nt.exe
будет вести себя точно так же, как mysqld.exe
. Я бы все равно ушел от этого и просто использовал mysqld.exe
.