mySQL和XAMPP的端口冲突

时间:2015-08-24 01:18:34

标签: php mysql apache xampp

我已经使用XAMPP / Apache一段时间了,最​​近决定安装MySQL。然而,它们似乎是相互矛盾的。 MySQL似乎更喜欢它,它运行正常,但XAMPP / Apache在尝试启动Apache时给我这个错误消息:

03:07:32 AM  [Apache]   Attempting to start Apache app...
03:07:33 AM  [Apache]   Status change detected: running
03:07:33 AM  [Apache]   Status change detected: stopped
03:07:33 AM  [Apache]   Error: Apache shutdown unexpectedly.
03:07:33 AM  [Apache]   This may be due to a blocked port, missing dependencies, 
03:07:33 AM  [Apache]   improper privileges, a crash, or a shutdown by another method.
03:07:33 AM  [Apache]   Press the Logs button to view error logs and check
03:07:33 AM  [Apache]   the Windows Event Viewer for more clues
03:07:33 AM  [Apache]   If you need more help, copy and post this
03:07:33 AM  [Apache]   entire log window on the forums

我尝试按照这里的说明操作: http://www.complete-concrete-concise.com/web-tools/how-to-change-the-apache-port-in-xampp

我尝试更改文档:xampp / apache / conf中的httpd.conf

改变'倾听80'对于各种各样的事情,并在重新启动应用程序后,我发生了相同的错误消息。

非常感谢对此事的任何帮助。我不想仅仅为了使用XAMPP而删除mySQL,但如果它们无法同时运行,那么它将会被删除。

提前致谢。

编辑:

我相信它与MySQL相冲突的原因是:

03:26:51 AM  [mysql]    Problem detected!
03:26:51 AM  [mysql]    Port 3306 in use by ""C:\Program Files\MySQL\MySQL Server 5.6\bin\mysqld.exe" --defaults-file="C:\ProgramData\MySQL\MySQL Server 5.6\my.ini" MySQL56"!
03:26:51 AM  [mysql]    MySQL WILL NOT start without the configured ports free!
03:26:51 AM  [mysql]    You need to uninstall/disable/reconfigure the blocking application
03:26:51 AM  [mysql]    or reconfigure MySQL and the Control Panel to listen on a different port

我在使用XAMPP / Apache暂时禁用mySQL时遇到了一些困难。 有没有办法改变端口,以便它们可以共存?

编辑2:

试图按照此处的说明操作: http://silentlyrun.blogspot.com.au/2013/02/how-to-change-apache-n-mysql-port-for.html

我在以下情况下遇到以下错误消息:

09:13:22 AM  [main]     Initializing Modules
09:13:22 AM  [Apache]   Problem detected!
09:13:22 AM  [Apache]   Port 80 in use by "Unable to open process" with PID 4084!
09:13:22 AM  [Apache]   Apache WILL NOT start without the configured ports free!
09:13:22 AM  [Apache]   You need to uninstall/disable/reconfigure the blocking application
09:13:22 AM  [Apache]   or reconfigure Apache and the Control Panel to listen on a different port
09:13:22 AM  [Apache]   Problem detected!
09:13:22 AM  [Apache]   Port 443 in use by "Unable to open process" with PID 4084!
09:13:22 AM  [Apache]   Apache WILL NOT start without the configured ports free!
09:13:22 AM  [Apache]   You need to uninstall/disable/reconfigure the blocking application
09:13:22 AM  [Apache]   or reconfigure Apache and the Control Panel to listen on a different port

根据这些说明,新端口是否应该相同?我假设是因为他们都是80岁。

4. Search the string "Listen" in the file.
5. Replace port number 80 to any other unused port number.
6. Search for "ServerName" in the file.
7. Replace port number 80 to any other unused port number in the ServerName.

编辑3:

由于我不知道的原因,从上面的silentntlyrun.blogspot链接重新安装和端口更改后,XAMPP / MySQL没有问题。 然而,XAMPP / Apache仍然存在问题:

09:32:14 AM  [Apache]   Error: Apache shutdown unexpectedly.
09:32:14 AM  [Apache]   This may be due to a blocked port, missing dependencies, 
09:32:14 AM  [Apache]   improper privileges, a crash, or a shutdown by another method.
09:32:14 AM  [Apache]   Press the Logs button to view error logs and check
09:32:14 AM  [Apache]   the Windows Event Viewer for more clues
09:32:14 AM  [Apache]   If you need more help, copy and post this
09:32:14 AM  [Apache]   entire log window on the forums

3 个答案:

答案 0 :(得分:9)

要在已经运行另一个MySQL服务器时解决MySQL端口和服务冲突,您需要按照以下步骤操作: -

1)关闭XAMPP服务器

2)打开文件C:\ xampp \ mysql \ bin \ my.ini(C:是默认的XAMPP安装)

3)用3307替换端口号3306

  

#password = your_password

     

port = 3307

     

socket =“C:/xampp/mysql/mysql.sock”

  

#MySQL服务器

     

的[mysqld]

     

port = 3307

4)保存文件并打开XAMPP控制面板

5)在XAMPP控制面板中单击配置> 服务和端口设置

6)转到 MySQL 标签

7)将服务名称 mysql 更改为 mysqlxampp ,将主要端口 3306 更改为 3307

8)点击Save然后保存并关闭XAMPP

9)再次运行XAMPP,您将能够启动MySQL服务器

您可能还会遇到phpMyAdmin的问题 您可以为其添加行

  

$ cfg ['Servers'] [$ i] ['port'] ='3307';

在phpMyAdmin根目录的config.inc.php文件中。

答案 1 :(得分:2)

如果您已单独安装MySQL并且还运行了XAMPP的MySQL,那么您将遇到此问题。冲突是针对端口3306而不针对端口80.我建议您遵循此处提到的准则:

http://silentlyrun.blogspot.com.au/2013/02/how-to-change-apache-n-mysql-port-for.html

当我单独安装MySQL并作为XAMPP的一部分安装时,这对我有用。

答案 2 :(得分:0)

重新启动计算机,然后使用命令行netstat。它将显示哪些应用程序有端口打开。