2015-01-12 20 views
8

Ich bin überrascht, dass ich nicht in der Lage war, eine gute Antwort zu finden, die bereits durch StackOverflow sucht.PHP Warnung: mysqli_connect(): (HY000/2002): Verbindung verweigert

Ich verwende PHP5.5 und MAMP (heruntergeladen von here).

Ich habe ein einfaches Skript wie folgt aus:

<?php 
$servername = "127.0.0.1"; 
$username = "root"; 
$password = "root"; 

// Create connection 
$conn = mysqli_connect($servername, $username, $password); 

// Check connection 
if (!$conn) { 
    die("Connection failed: " . mysqli_connect_error()); 
} 
echo "Connected successfully"; 
?> 

und als ich dieses Skript ausführen ich diesen Fehler:

PHP Warning: mysqli_connect(): (HY000/2002): Connection refused in /Applications/MAMP/htdocs/test/test.php on line 7 

Gibt es eine Konfigurationsproblem, das ich innerhalb von MAMP einrichten müssen oder PHP?

+0

Was passiert, wenn Sie den Servernamen ändern zu 'localhost'? Sind Ihre Zugangsdaten korrekt? Hafen? –

+0

Ich habe versucht alle Kombinationen von 'localhost',' 127.0.0.1' und Passwort von 'root' und leere Zeichenfolge. Die Anmeldeinformationen und der Port sollten die Standardwerte von MAMP sein, wenn ich sie heute früher heruntergeladen habe. – johncorser

+2

Verbindung verweigert = mysql hört nicht auf Port 3306 oder läuft überhaupt nicht oder ist nicht eingerichtet, TCP-Verbindungen zuzulassen, oder es gibt eine Firewall, die Port 3306 aktiv blockiert. –

Antwort

14

Falls jemand anderes durch dieses Problem kommt, ist der Standardport auf MAMP für mysql 8889, aber der Port, den PHP für mysql verwenden möchte, ist 3306. Sie müssen also MAMP öffnen, zu den Voreinstellungen gehen und den MAMP mysql-Port in 3306 ändern, dann den mysql-Server neu starten. Jetzt sollte die Verbindung erfolgreich sein mit host = localhost, user = root, pass = root.

+0

Nicht mit MAMP, aber wenn ich dies in der 'dsn:' Zeichenfolge in dieser CodeIgniter-Anwendung in 'config/database.php' ändern, um' port = 3306' zu sagen, funktioniert es vollkommen in Ordnung. Was sagt es, um nach dem MAMP-Port zu suchen? – IIllIIll

3

Manchmal müssen Sie mysql DB-Port-ID in den Server wie folgt einschließen.

$serverName = "127.0.0.1:3307"; 
0

Sie haben die MAMP Mysql Datenbank-Port ändern in 8889.

-1

Für mich, damit es wieder funktioniert Ich löschte die Dateien einfach

ib_logfile0

und

ib_logfile1

.

aus:

/Applications/MAMP/db/mysql56/ib_logfile0 

Mac 10.13.3
MAMP: Version 4,3 (853)

+0

Ja, das Löschen von Raw-Dateien ist immer eine gute Idee. Nicht. –

+0

Ich habe alles versucht und es ist das einzige, was meinen Sql Server zurückbekommt ... Ich weiß, es ist nicht das Beste, aber es funktionierte für mich. – FrancisUster

Verwandte Themen