XAMPP(Windows Vistaの場合)からMySqlを起動しようとしていますが、ポート3306がビジーであると表示されます。
どのアプリケーションがそのポートを使用しているか、そしてそれを解放する方法を確認するための最良の方法は何でしょうか?
ありがとう!
コマンドシェルで、次を実行します。
netstat -b -p TCP
または
netstat -an | grep -i listen | grep -E 3306
最初のコマンドは、2番目の列にlocalhost:3306
を表示する行を探す必要があるリストを出力します。この下には、ポートを使用したアプリケーションの名前があります。
2番目のコマンドは、探している正確なポートを見つけて、次のようになります。
<example-name>:user <example-name>$ netstat -an | grep -i listen | grep -E 3306
tcp46 0 0 *.3306 *.* LISTEN
タスクマネージャを開いてMySqlサービスを強制終了するだけです。
私は同じ問題を抱えていて、このことに1日立ち往生していて、どこにも完璧な答えを見つけることができませんでした。だから私はそれを自分で試してみました、そしてそれはうまくいきました。このソリューションは、Windowsユーザー向けです。私はWindows7を使用しています。
Xamppコントロールパネルに、ポート3306がビジーで、一部のファイル(名前が指定されています)で使用されているというエラーが表示されていました。「filename.de」と言ってください。
次に、次の手順に従います。
@Segun Emmanuelが述べたように、次のコマンドを実行します。
netstat -a -b
さまざまなポートを使用しているアプリケーションのリストが表示されます。 Ctrl + F
を押し、3306と書き込んで、どのアプリケーションがPORT3306を使用しているかを確認します。
この後、検索バーまたはCTRL + ALT + DEL
を押してタスクマネージャーに移動します。次に、バックグラウンドプロセスの下で、mysqld.exe
を見つけて右クリックすると、閉じるオプション、つまり「End Task
」が表示されます。
次に、Xamppコントロールパネルに移動し、MySQLサービスを開始します。
Mysqlがxamppで起動していない場合は、ポートの競合の問題である可能性があります。 Mysqlはデフォルトでポート3306で実行されます。別のアプリケーションがそのポートを占有しているかどうかを確認する必要があります。次のコマンドを使用して、ポートを占有しているアプリを確認します
Linux: netstat -tulpn | grep 3306
Window: netstat -a -b
Mac: lsof -nP -i4TCP:3306
そのポートを占有しているアプリケーションを見つけた場合は、アプリケーションを停止してxamppを再起動します。別の方法として、php.iniファイルに移動するか、xampp for mysqlでconfigureをクリックして、mysqlポートを3307に変更することができます。
私の場合、ポート3306で起動していたのはjavaw.exeでした。Windows10で単一のユーザーを使用してログインしている場合、このexeは問題を引き起こしません。ただし、複数のログインがある場合は、ユーザーごとにこのexeを起動し、ブロックします。 MySQLは3306ポートで起動します。
タスクマネージャーに移動し、他のユーザーのこのexeを強制終了すると、問題が修正され、MySQlが起動する可能性があります。
私はこの問題を抱えていました(私がMAMPを使用していたのでわずかな変動)
この問題はMySQLWorkbenchがインストールされていることが原因であることがわかりました。MySQLWorkbenchは起動時にmySQLサービスを開始し、MAMPがポートを使用できなくなりました。
これを修正するために、2つのオプションがありました。
これにより、MAMPはポート3306を使用できるようになりました。
これが誰かを助けるかもしれないことを願っています!
この問題の場合、Windowsでのより簡単な方法は次のとおりです。-