Установка Wordpress - php и mysql не общаются друг с другом для доступа к базе данных? - PullRequest
1 голос
/ 09 ноября 2011

Я пытаюсь заставить WordPress локальную установку работать на моем Mac.

Я недавно настроил базу данных, имя пользователя и пароль с помощью клиента MySQL согласно инструкциям в wordpress.Codex .Эта часть в порядке.

Когда я захожу на локальный сайт на моем компьютере, WordPress предлагает мне настроить файл wp-config.php.Добавление тех же данных, которые определенно работают с клиентом MySQL, возвращает ошибку.

Обновление этих сведений вручную в файле 'wp-config-sample.php' и переименование его также в 'wp-config.php'не работает - меня сейчас приветствует большое смелое сообщение: « Ошибка при установлении соединения с базой данных» .

Из того, что я могу собрать, php и mysql не взаимодействуют с каждымдругие правильно.

Я изменил файл конфигурации apache 2, найденный в 'etc / apache2 / httpd.conf' и раскомментировал строку, которая загружает модуль php5: LoadModule php5_module libexec / apache2 / libphp5.so

и перезапустил сервер apache.Это до сих пор не решило мою проблему.Я застрял на том, что делать дальше ... помогите оценили, пожалуйста!

Ответы [ 2 ]

1 голос
/ 10 ноября 2011

Исправлено.

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. Теперь это говорит о гораздо большей информации, чем «Ошибка при установлении соединения с базой данных» - фактически я мог видеть, что mysql.sock не был настроен правильно вообще.

Создание файла phpinfo.php с помощью одной строки кода <?php phpinfo(); ?> стало для меня поворотным моментом.

Поместив этот файл phpinfo.php в мой каталог localhost, а затем просматривая его через веб-браузер, не только однозначно подтвердил , что файл mysql.sock не был настроен должным образом, но он также показал, откуда на моей машине загружались конфигурации: '/private/etc/php.ini'

Следующим, что я сделал, было открытие файла php.ini в текстовом редакторе и быстрый поиск и замена для обновления правильного местоположения mysql.sock .

Наконец, необходимо перезагрузить локальный сервер apache, чтобы полностью обновить все новые настройки, с которыми я возился.

sudo apachectl restart

Теперь все отлично работает!

0 голосов
/ 09 ноября 2011

Сообщение об ошибке « Ошибка при установлении соединения с базой данных » ясно указывает на то, что php-скрипт не может установить соединение. Это может иметь одну из следующих причин:

  1. Ваш хост в wp-config.php неверен.
  2. MySQL-сервер не слушает на этом хосте
  3. Пользователь, которого вы настроили в mysql, не имеет привилегий для подключения так, как вы пытаетесь
  4. Брандмауэр блокирует доступ php-скрипта к вашему mysql-хосту

Попробуйте подключить базу данных с теми же настройками вашего wordpress, используя Sequel Pro (или любой другой графический интерфейс для подключения базы данных mysql). Если соединение работает, проблема 2. и 3. не является вашей проблемой.

Загляните в журнал брандмауэра, чтобы убедиться, что 4. также не является вашей проблемой.

Если все проблемы исключены (даже 1. после окончательной проверки), попробуйте запустить что-то вроде phpMyAdmin , чтобы подключить вашу базу данных, чтобы убедиться, что в вашей php-установке есть необходимые драйверы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...