phpMyAdmin
 sql >> Datenbank >  >> Database Tools >> phpMyAdmin

phpmyadmin kann auf Mac OS High Sierra nicht eingerichtet werden

Wenn Sie den Standardwert „host“ in phpMyAdmin verwenden, versucht es, eine Verbindung über eine Socket-Verbindung herzustellen ($cfg['Servers'][$i]['host'] = 'localhost'; ist der Standardwert, es sei denn, Sie haben ihn ausdrücklich in config.inc.php festgelegt ). Unter Mac OS sind sich PHP und MySQL aus irgendeinem Grund nicht über den Standardspeicherort der Socket-Datei einig.

Es gibt mehrere einfache Lösungen, aber für zwei davon müssen Sie zuerst den tatsächlichen Pfad zum Socket ermitteln. Der einfachste Weg ist, zur MySQL-Eingabeaufforderung zu gelangen. Öffnen Sie „Terminal“ im Ordner „Programme“ -> „Dienstprogramme“ und geben Sie dann mysql -u root -p ein und wenn Sie dazu aufgefordert werden, geben Sie Ihr MySQL-Root-Passwort ein (der Standardwert ist normalerweise leer). Geben Sie an der MySQL-Eingabeaufforderung status; ein und Sie sehen eine Liste mit mehreren verbindungsbezogenen Einstellungen. Suchen Sie nach einem wie

UNIX-Socket:/var/run/mysqld/mysqld.sock

Dies ist der Pfad zum Socket. Ihre wird mit ziemlicher Sicherheit anders sein.

Nun zu diesen Möglichkeiten, dies zu beheben:

  1. Ändern Sie den Standard-Socket in PHP. Öffnen Sie die PHP-Konfigurationsdatei (wahrscheinlich php.ini) in Ihrem bevorzugten Texteditor und fügen Sie den korrekten Pfad zur Zeile mysqli.default_socket = hinzu . Diese Änderung wirkt sich auf alle PHP-Skripte aus, die den standardmäßigen System-Socket-Pfad verwenden.
  2. Ändern Sie den Socket nur für phpMyAdmin. Öffnen Sie die phpMyAdmin-Konfigurationsdatei (config.inc.php) in Ihrem bevorzugten Texteditor. Bearbeiten oder fügen Sie die Zeile $cfg['Servers'][$i]['socket'] = ''; hinzu mit dem richtigen Pfad.
  3. Schalten Sie den Verbindungstyp auf TCP-Netzwerk um. Bearbeiten Sie erneut die phpMyAdmin-Konfigurationsdatei (config.inc.php) und bearbeiten oder fügen Sie die Zeile $cfg['Servers'][$i]['host'] = '127.0.0.1'; hinzu . Dadurch wird phpMyAdmin angewiesen, die TCP-Netzwerkverbindungsmethode anstelle von Sockets zu verwenden. Beachten Sie, dass Ihre MySQL-Instanzen möglicherweise standardmäßig nicht auf eingehende TCP-Verbindungen warten und dass Ihr MySQL-Benutzer example@ sqldat.com ist nicht dasselbe wie [email protected] oder [email protected] %.

Sie sollten nur eine dieser Lösungen benötigen, nicht alle drei.