Когато използвате стойността по подразбиране 'host' в phpMyAdmin, той се опитва да се свърже чрез сокет връзка ($cfg['Servers'][$i]['host'] = 'localhost';
е по подразбиране, освен ако не сте го задали изрично в config.inc.php
). В Mac OS по някаква причина PHP и MySQL не са съгласни относно местоположението по подразбиране на сокет файла.
Има няколко лесни решения, но за две от тях първо трябва да определите действителния път до гнездото. Най-лесният начин е да стигнете до командния ред на MySQL. Отворете „Терминал“ в папката Applications -> Utilities, след което въведете mysql -u root -p
и когато бъдете подканени, въведете вашата MySQL root парола (по подразбиране обикновено е празно). В подканата на MySQL въведете status;
и ще видите списък с няколко настройки, свързани с връзката. Потърсете един като
UNIX сокет:/var/run/mysqld/mysqld.sock
Това е пътят към гнездото. Вашият почти сигурно ще бъде различен от този.
Сега за тези начини да поправите това:
- Променете сокета по подразбиране в PHP. Отворете конфигурационния файл на PHP (вероятно php.ini) в любимия си текстов редактор и добавете правилния път към реда
mysqli.default_socket =
. Тази промяна ще засегне всеки PHP скрипт, използващ пътя на системния сокет по подразбиране. - Променете сокета само за phpMyAdmin. Отворете конфигурационния файл phpMyAdmin (config.inc.php) в любимия си текстов редактор. Редактирайте или добавете реда
$cfg['Servers'][$i]['socket'] = '';
с правилния път. - Превключете типа на връзката към TCP мрежа. Отново редактирайте конфигурационния файл на phpMyAdmin (config.inc.php) и редактирайте или добавете реда
$cfg['Servers'][$i]['host'] = '127.0.0.1';
. Това ще каже на phpMyAdmin да използва метода за TCP мрежова връзка вместо сокети. Обърнете внимание, че вашите MySQL екземпляри може да не слушат за входящи TCP връзки по подразбиране и че вашият потребител на MySQL [email protected] или [email protected] %.
Трябва да ви трябва само едно от тези решения, а не и трите.