![](/img/trans.png)
[英]“Error establishing a database connection” in local WordPress environment after Yosemite upgrade
[英]MAMP: Can't find server/connect to database after Yosemite upgrade
MAMP过去在本地开发WordPress网站时为我提供了完美的工作。 然后,我升级到优胜美地,并开始在浏览器中收到“找不到服务器”错误(当端口设置为默认值Apache:8888,MySQL:8889时),然后出现“连接数据库的错误”(当端口设置为80、443和3306)。
唯一更改的是优胜美地升级。 因此,我尝试切换到MAMP Pro,以查看它是否有所作为! 但是现在审判已经到期,我又冷了。 然后我也尝试了XAMPP和AMPPS,但是遇到了同样的问题。 这是几个星期前的事。 因此,今天我开始开发一个新站点,并决定只注册MAMP Pro,以为我会避免头痛并继续生活。 但是现在MAMP Pro给我同样的问题。 我不知道发生了什么以及如何解决此问题。
我尝试将wp-config主机设置设置为“ localhost:8888”和“ 127.0.0.1”无济于事。
任何建议表示赞赏。
我遇到了类似的问题,听起来我遵循了类似的过程(很多类似的设置,尽管最终没有升级到MAMP Pro)。 当我查看错误日志MAMP/logs/mysql_error_log.err
时注意到的一件事是以下消息:
InnoDB: Unable to lock ./ibdata1, error: 35
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
当我打开活动监视器时,我看到mysqld的进程处于活动状态(即使MAMP已关闭)。 我不确定先前的进程是否没有正确终止或什么终止,但是我手动退出了该进程,重新启动了MAMP,并且工作正常。 就我而言,这是一件很小而愚蠢的事情,但有时就是这样。 祝好运!
启动Terminal
并运行以下命令:
sudo apachectl configtest
您是否收到错误消息(例如“坏名”)或任何警告?
如果是由于名字不正确,请在MAMP文件夹中找到bin > apache2
然后在TextEdit中打开http.conf
文件。
找到以下两行:
User _www Group _www
您所要做的就是将用户_www
替换_www
文件夹的名称,并将Group替换为staff
。 例如,如果您的主文件夹名为rugbyplayer
,则应这样写:
User rugbyplayer Group staff
让我知道这是否适合您。
OSX Yosemite(也可能是OSX的较新版本)在mysql.sock文件的位置错误,这可能是为什么升级到Yosemite破坏了您的本地站点的原因。 创建指向正确位置的符号链接将解决此问题:
sudo mkdir /var/mysql
sudo chmod 755 /var/mysql
sudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock
缺少符号链接特别是WordPress出现问题的原因是因为在您的wp-config.php文件中, define('DB_HOST', 'localhost');
不管用。 另一种解决方法是将wp-config文件中的该值更改为define('DB_HOST', '127.0.0.1');
。
也许当您在wp-config文件中尝试127.0.0.1时,您在MAMP中指定了错误的端口吗? 80、443和3306应该可以工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.