webentwicklung-frage-antwort-db.com.de

PHP Warnung: mysqli_connect (): (HY000/2002): Verbindung abgelehnt

Ich verwende PHP 5.5 und MAMP (heruntergeladen von hier ):

Ich habe ein grundlegendes Skript wie dieses:

<?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 wenn ich dieses Skript starte, erhalte ich diesen Fehler:

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

Gibt es ein Konfigurationsproblem, das ich in MAMP oder PHP einrichten muss? 

11
johncorser

Falls jemand anderes von diesem Problem betroffen ist, ist der Standardport auf MAMP für mysql 8889, aber der Port, den php für mysql erwartet, ist 3306. Sie müssen also MAMP öffnen, zu den Einstellungen wechseln und den MAMP-Mysql-Port in 3306 ändern, dann den Mysql-Server neu starten. Nun sollte die Verbindung mit Host = localhost, user = root, pass = root erfolgreich sein.

19
johncorser

Manchmal müssen Sie die mysql-db-Port-ID auf diese Weise in den Server aufnehmen.

$serverName = "127.0.0.1:3307";
6
Ronny Kibet

Damit es wieder funktioniert, habe ich die Dateien gelöscht 

ib_logfile0

und 

ib_logfile1

.

von : 

/Applications/MAMP/db/mysql56/ib_logfile0 

Mac 10.13.3
MAMP: Version 4.3 (853)

1
FrancisUster

In meinem Fall habe ich XAMPP verwendet und es gab ein Protokoll, das mir den Fehler mitteilte. Um es zu finden, gehen Sie zur XAMPP-Systemsteuerung und klicken Sie auf "Konfigurieren" für MySQL und dann auf "Protokoll öffnen".

Die aktuellsten Daten des Protokolls befinden sich unten, und das Protokoll ist nach Datum, Uhrzeit, Anzahl und Text in Klammern sortiert, die möglicherweise "Hinweis" oder "Fehler" enthalten. Einer, der "Fehler" sagt, ist wahrscheinlich die Ursache des Problems.

Für mich war mein Fehler ein Tablespace, der ein Problem verursachte, sodass ich die Datenbankdateien am angegebenen Speicherort löschte.

Hinweis: Die Tablespace-Dateien für Ihre Installation von XAMPP befinden sich möglicherweise an einem anderen Speicherort, befinden sich jedoch in /opt/lampp/var/mysql für mich. Ich denke, das ist typisch für XAMPP auf Debian-basierten Distributionen. Außerdem können meine Anweisungen zum Klicken auf das Kontrollfeld zum Anzeigen des Protokolls für Sie etwas anders sein, da ich XAMPP auf einer Ubuntu-basierten Linux-Distribution (Feren OS) ausführe.

0
StealthDroid

Sie müssen den Mamp Mysql Database-Port in 8889 ändern. 

0
rashedcs