web-dev-qa-db-ja.com

MySqlを起動できません。ポート3306がビジーです

XAMPP(Windows Vistaの場合)からMySqlを起動しようとしていますが、ポート3306がビジーであると表示されます。

どのアプリケーションがそのポートを使用しているか、そしてそれを解放する方法を確認するための最良の方法は何でしょうか?

ありがとう!

7
Roger

コマンドシェルで、次を実行します。

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
8
Linus Kleen

タスクマネージャを開いてMySqlサービスを強制終了するだけです。

6
asas

私は同じ問題を抱えていて、このことに1日立ち往生していて、どこにも完璧な答えを見つけることができませんでした。だから私はそれを自分で試してみました、そしてそれはうまくいきました。このソリューションは、Windowsユーザー向けです。私はWindows7を使用しています。

Xamppコントロールパネルに、ポート3306がビジーで、一部のファイル(名前が指定されています)で使用されているというエラーが表示されていました。「filename.de」と言ってください。

次に、次の手順に従います。

  1. 押す Ctrl+Alt+Del タスクマネージャを開きます。
  2. 「プロセス」リストを開き、プロセスのリストの下にある「すべてのプロセスを表示」をチェックします。そのようなオプションが表示されなくても、心配しないでください。一部のプロセスを表示するには、管理者権限が必要な場合があります。
  3. これで、「すべてのプロセスを表示」ボタンをクリックすると、すべてのプロセスが表示されます。
  4. ここで、タスクマネージャの[サービス]タブに切り替えると、サービスのリストが表示されます。ここで、xamppのエラーメッセージに表示された「filename.de」<-filenameという名前のサービスを探します。
  5. そのサービスを見つけたら、「右クリック」して、オプションをクリックします。GoToプロセス。
  6. そのサービスに対応するプロセスに焦点を当てた[プロセス]タブにリダイレクトされます。 「右クリック」してから「プロセスツリーの終了」をクリックします。
  7. これで、問題は解決しました。ただし、PCを再起動するときに、同じことを再度実行する必要がある場合があります。したがって、PCをスリープモードに保つのが最善です。
  8. それ以外の場合、この問題を永続的に解決するには、「msconfig」を開き、サービスリストからその特定のプロセスのチェックを外して、[適用]をクリックします。システムを再起動できます。
5
Prabhat

@Segun Emmanuelが述べたように、次のコマンドを実行します。

netstat -a -b 

さまざまなポートを使用しているアプリケーションのリストが表示されます。 Ctrl + Fを押し、3306と書き込んで、どのアプリケーションがPORT3306を使用しているかを確認します。

enter image description here

この後、検索バーまたはCTRL + ALT + DELを押してタスクマネージャーに移動します。次に、バックグラウンドプロセスの下で、mysqld.exeを見つけて右クリックすると、閉じるオプション、つまり「End Task」が表示されます。

enter image description here

次に、Xamppコントロールパネルに移動し、MySQLサービスを開始します。

enter image description here

3
Kashif Iftikhar

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に変更することができます。

2
Segun Emmanuel

私の場合、ポート3306で起動していたのはjavaw.exeでした。Windows10で単一のユーザーを使用してログインしている場合、このexeは問題を引き起こしません。ただし、複数のログインがある場合は、ユーザーごとにこのexeを起動し、ブロックします。 MySQLは3306ポートで起動します。

タスクマネージャーに移動し、他のユーザーのこのexeを強制終了すると、問題が修正され、MySQlが起動する可能性があります。

2
Mihir Kagrana

私はこの問題を抱えていました(私がMAMPを使用していたのでわずかな変動)

この問題はMySQLWorkbenchがインストールされていることが原因であることがわかりました。MySQLWorkbenchは起動時にmySQLサービスを開始し、MAMPがポートを使用できなくなりました。

これを修正するために、2つのオプションがありました。

  1. MySQLWorkbenchをアンインストールします
  2. タスクを開き、[サービス]タブをクリックして、現在のMySQLサービスを強制終了します

これにより、MAMPはポート3306を使用できるようになりました。

これが誰かを助けるかもしれないことを願っています!

1
AndrewBramwell

この問題の場合、Windowsでのより簡単な方法は次のとおりです。-

  1. タスクマネージャーに移動します
  2. サービスに移動
  3. MySQl80という名前のサービスがあります。右クリックして、[停止]を選択します。
  4. XAMPPサーバーでMySQlモジュールを再起動してみてください
0