Windows 上の MySQL - バイナリに関する質問

Windows 上の MySQL - バイナリに関する質問

Windows で実行されているプロセスの識別情報を収集しようとしています。 'mysqld.exe' と 'mysqld-nt.exe' バイナリの違いがわかりません。違いは何ですか。また、それぞれにどのような機能がありますか。

ありがとう。

答え1

これらは同じものであり、MySQL プログラム/インターフェースであるバックグラウンド サービス (別名デーモン) であると私は考えています。

私の理解では、MySQL のバージョン 5 あたりで、Windows バージョンから「-nt」が削除されました (Mysqld.exe に名前が変更されました)。

残念ながら引用できるソースはありませんが、弊社の MySQL サーバーは 5.x を実行しており、そのいずれにも mysqld-nt.exe ファイルがありません。ただし、(遠い)過去にそれを見たことがあることは知っています。

答え2

違いは次のとおりです:mysqld-nt.exe名前付きパイプと呼ばれる特定の Windows 通信プロトコルを利用した MySQL のバージョンです。

による

ここに画像の説明を入力してください

第 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 で localhost ホスト接続を行う代わりに使用されていた可能性があります。

私は3年前にDBA StackExchangeに投稿しました(MySQL-NT が頻繁にクラッシュする)どうすればそこから抜け出せるかを議論する。特に2011年4月に販売終了となった

もしあなたが走っていmysqld-nt.exeて、--名前付きパイプを有効にするオプションでは、名前付きパイプは有効になっていません (デフォルト)。したがって、はmysqld-nt.exeとまったく同じように動作しますmysqld.exe。それでも、私はそれを避けて を使用しますmysqld.exe

関連情報