Wordpress安装 - php和mysql是不是互相交谈才能访问数据库?

时间:2011-11-09 10:00:00

标签: php mysql macos wordpress installation

我正在尝试在我的Mac上运行wordpress本地安装。

我最近根据wordpress codex中的说明使用MySQL客户端设置了数据库,用户名和密码。那部分还可以。

当我在计算机上访问本地站点时,我会被wordpress提示设置wp-config.php文件。使用与MySQL客户端一致的相同细节会返回错误。

手动更新'wp-config-sample.php'文件中的这些细节并将其重命名为'wp-config.php'也不起作用 - 我现在收到一条大胆的信息:“建立数据库连接时出错“

从我可以收集的内容来看,php和mysql没有正确地相互通信。

我已经更改了'etc / apache2 / httpd.conf'中的apache 2配置文件并取消注释了加载php5模块的行:LoadModule php5_module libexec / apache2 / libphp5.so

并重新启动apache服务器。这仍然没有解决我的问题。我坚持要做下一步做什么......请帮忙谢谢!

2 个答案:

答案 0 :(得分:1)

现在已经修好了。

php正在寻找mysql.sock文件的错误位置,无法与mysql数据库通信,这意味着无法设置wordpress。

在命令行中输入

ps aux | grep mysql

提供尽可能多的关于mysql的信息。从这里我看到我的计算机上的mysql套接字正在/tmp/mysql.sock

中使用

同时,在“wp-config.php”文件中,我将行define('WP_DEBUG', false);更改为define('WP_DEBUG', true);并刷新了显示我的localhost设置的Web浏览器。现在说了比“建立数据库连接错误”更多的信息 - 事实上我可以看到 mysql.sock 根本没有正确配置。

使用单行代码 <?php phpinfo(); ?> 创建'phpinfo.php'文件是我的关键转折点。

将'phpinfo.php'文件放入我的localhost目录,然后从我的网络浏览器中查看,不仅明确确认 mysql.sock 文件未配置正确,但它也显示了从我的机器上加载配置的位置:'/private / etc / php.ini'

我接下来要做的是在文本编辑器中打开'php.ini'文件并快速查找并替换以更新 mysql.sock 的正确位置。

最后,需要重新启动本地apache服务器才能完全更新我一直在努力的所有新设置。

sudo apachectl restart

现在一切正常!

答案 1 :(得分:0)

错误消息“建立数据库连接错误”清楚地表明,php脚本无法建立连接。这可能有以下原因之一:

  1. wp-config.php中的主机不正确。
  2. mysql-server不侦听该主机
  3. 您在mysql中设置的用户没有权限连接您尝试的方式
  4. 防火墙阻止php脚本访问您的mysql-host
  5. 尝试使用Sequel Pro(或任何其他GUI连接mysql数据库)使用相同的wordpress设置连接数据库。如果连接有效,问题2.和3.不是你的问题。

    查看防火墙日志以确保4.也不是您的问题。

    如果排除了所有问题(即使是最终检查后的1.),请尝试运行类似phpMyAdmin的连接数据库,以确保您的php安装具有所需的驱动程序。