MySQL в Windows - Питання щодо бінарних файлів


0

Я намагаюся зібрати ідентифікаційну інформацію для процесів, що працюють в Windows. Мені не вдалося виявити різницю між бінарними файлами 'mysqld.exe' та 'mysqld-nt.exe'. У чому різниця, і які функції забезпечує кожен?

Дякую.


На основі моїх досліджень один є демоном, а другий службою windows-nt. Якщо у вас не встановлений MySQL, вам слід просто закінчити процес.
Ramhound

Відповіді:


0

Я вважаю, що це одне і те ж, фонова служба (ака Daemon), яка є програмою / інтерфейсом MySQL.

З мого розуміння, "-nt" було скинуто з версій Windows (перейменованих на Mysqld.exe) десь біля версії 5 MySQL.

На жаль, у мене немає джерела, щоб цитувати, але наші сервери MySQL працюють на них 5.x, і жоден з них не має файлів mysqld-nt.exe, але я знаю, що я це бачив у (далекому) минулому.


Я спеціально дивлюсь на MySQL 5.0 тут, і я думаю, ви маєте рацію в тому, що після цієї версії вони відкинули "-nt". Я бачу, що обидва процеси працюють одночасно. Я думаю, що Рамхаунд був прав у тому, що "mysqld.exe" є самим сервером, тоді як "mysqld-nt.exe" - це послуга Microsoft. Я хотів би це перевірити.
GROND

У нас немає запущеної версії "-nt", і навіть ми не маємо файл на своїх 5,5 серверах (що я міг знайти). Можливо, на машині працює кілька екземплярів / версій MySQL? Можливо, вбудований БД у програму?
Ƭᴇcʜιᴇ007

0

Ось відмінність: mysqld-nt.exeбула версія MySQL, яка скористалася специфічним протоколом зв’язку Windows під назвою Named Pipes.

Згідно з Книгою

введіть тут опис зображення

Розділ 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). Тим не менш, використання названих труб, ймовірно, було використано як альтернативу підключенню localhost хостів у Windows.

Я написав пост 3 роки тому в DBA StackExchange ( MySQL-NT часто виходить з ладу ), обговорюючи, як слід від нього піти, тим більше, що він пішов EOL у квітні 2011 року .

Якщо ви працюєте, mysqld-nt.exeі ви не знали про параметр --enable-named-pipe , названа труба не включена (за замовчуванням). Тому mysqld-nt.exeповодився б саме так mysqld.exe. Я б все-таки пішов від цього і просто користувався mysqld.exe.


Дякую, це дуже корисно. Я насправді не запускаю MySQL (не для Windows у будь-якому випадку), а намагаюся систематично скласти інвентар програмного забезпечення, що працює на серверах Windows за допомогою інформації про процес, що проходить через WMI. Чи є різниці між двома службами, особливо в контексті відображення залежності залежності від сервера?
GROND

Зважаючи на протоколи за замовчуванням кожного, немає функціональної різниці між mysqld.exe і mysqld-nt.exe. Я все-таки раджу будь-кому перейти на mysqld.exe.
RolandoMySQLDBA
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.