MySQL не работает под apache/php

Я недавно установил Apache, PHP и MySQL, и все три, кажется, работают нормально по отдельности. Тем не менее, MySQL и PHP, похоже, не очень хорошо работают под Apache - при попытке подключиться к БД страница зависает на пару минут, а затем, наконец, загружается без содержимого и без сообщений об ошибках.

Я использую Apache 2.2.14, PHP 5.3.1 и MySQL 5.1.41. Я проверил, что MySQL включен с помощью phpinfo(). Все настройки и расширения в php.ini настраиваются следующим образом:

[MySQL]
mysql.allow_local_infile = On
mysql.allow_persistent = On
mysql.cache_size = 2000
mysql.max_persistent = -1
mysql.max_links = -1
mysql.default_port =
mysql.default_socket =
mysql.default_host =
mysql.default_user =
mysql.default_password =
mysql.connect_timeout = 60
mysql.trace_mode = Off

[MySQLi]
mysqli.max_persistent = -1
mysqli.allow_persistent = On
mysqli.max_links = -1
mysqli.cache_size = 2000
mysqli.default_port = 3306
mysqli.default_socket =
mysqli.default_host =
mysqli.default_user =
mysqli.default_pw =
mysqli.reconnect = Off

[PHP_MYSQL]
extension=php_mysql.dll
[PHP_MYSQLI]
extension=php_mysqli.dll

Я читал о таких проблемах в старых версиях PHP, связанных с DLL в каталоге PHP. Однако эта DLL больше не существует, и проблема предположительно была исправлена. Моя установка выглядит нормально? Кто-нибудь сталкивался с такой проблемой?

5 ответов

У меня тоже такая же проблема

Вы можете найти решение здесь:

http://uk.php.net/manual/en/function.mysql-connect.php

  1. Включите запись на экран в php.ini, как сказали другие.
  2. Если у вас есть физические журналы, посмотрите в них, чтобы получить представление об ошибке.
  3. Разместите все, что найдете здесь, чтобы мы могли помочь.:)

Обычно в таких случаях рекомендуется сначала просмотреть журналы сервера Apache. Для окон, если память служит, они должны находиться в папке вроде: C:\Program Files\Apache Foundation\Apache\logs, Проверить error_log файл.

Журналы событий Windows также могут содержать полезную информацию, доступ к которой можно получить через Консоль управления Windows / Системные инструменты / Просмотр событий / Журналы Windows, Журнал системы и приложений.

Я могу подключиться к mysql из командной строки, как рекомендовано BenTheDesigner. Я не могу подключиться в php, хотя. В журнале ошибок нет ошибок, только сообщения о запуске / остановке сервера

Я обнаружил, что, используя стандартные компоненты Microsoft "веб-платформы", я смог пропустить все пользовательские хакерские атаки, связанные с конкретной MySQL DLL.

В своих скриптах PHP убедитесь, что ошибки отображаются:

error_reporting(E_ALL | E_STRICT );
ini_set('display_errors', '1');

И используя mysqli_error() и / или mysqli_connect_error() тоже могу помочь

Другие вопросы по тегам