MySQL spricht nicht mehr mit PHP

5657
Matt Ellen

Ich habe gerade ein Upgrade von Windows XP auf Windows 7 (64 Bit) durchgeführt.

Ich habe EasyPHP 5.3.1 zur Entwicklung meiner Website verwendet, aber seit ich ein Upgrade durchgeführt habe, kann ich PHP nicht dazu bringen, mit MySQL zu sprechen.

Sogar die PHPMyAdmin-Seite wird nicht geladen.

Ich habe versucht, die neueste 64-Bit-Version von MySQL anstelle der mitgelieferten Version von MySQL zu installieren, aber das hat nicht geholfen.

Die Abfragen scheinen MySQL einfach nicht zu erreichen.

Ich habe die Funktionsfähigkeit der Datenbank für meine Datenbank überprüft, indem Sie mysql in der Befehlszeile ausführen.

PHPMyAdmin zeigt keinen Fehler an, nur eine leere Seite.

Der Fehler von meiner Website lautet:

Warnung: PDO :: __ construct () [pdo .-- construct]: [2002] Ein Verbindungsversuch ist fehlgeschlagen, weil der verbundene Teilnehmer nicht versucht hat (über TCP: // localhost: 3306 eine Verbindung herzustellen) in E: \ services \ EasyPHP- 5.3.1 \ www \ IdeaWeb \ classes \ Security.inc in Zeile 14

Schwerwiegender Fehler: Die maximale Ausführungszeit von 60 Sekunden wurde in E: \ services \ EasyPHP-5.3.1 \ www \ IdeaWeb \ classes \ Security.inc in Zeile 0 überschritten

Weiß jemand, wie man das löst? (dh MySQL sollte mit PHP sprechen.)

1

5 Antworten auf die Frage

2
Matt Ellen

OK. Ich wusste es nicht, aber 127.0.0.1 und localhost sind unter Windows 7 nicht dasselbe.

Ich habe etwas tiefer geholt und diesen Thread gefunden . Im Wesentlichen heißt es, um localhost verwenden zu können, müssen Sie es in der Hostdatei so einrichten, dass es auf 127.0.0.1 verweist

1
David Spillett

Wie beziehen Sie sich auf den SQL-Dienst? Mit dem lokalen Rechnernamen "localhost", einem DNS-Namen, der auf den Rechner verweist, einer IP-Adresse, die einer physikalischen Schnittstelle des Rechners zugeordnet ist, 127.0.0.1, ...?

Wenn Sie mit dem SQL-Dienst über irgendetwas sprechen, das extern aussehen könnte, dann ist der Windows-Firewall der häufigste Grund dafür, dass der Zugriff blockiert wird. Dies ist eine gute Sache (die Firewall sollte standardmäßig Dinge blockieren und nur Verbindungen zulassen, wenn dies ausdrücklich gesagt wird). Sie müssen lediglich sagen, dass Ihre SQL-Verbindungen zugelassen werden sollen. Ich habe Windows 7 nicht verwendet, daher kann ich Ihnen nicht genau sagen, wie das geht (es hat sich zweifellos zwischen den Versionen bewegt), aber es sollte nicht schwierig sein. Wenn Sie einen externen Namen / eine externe Adresse als Hostnamen für Verbindungen verwenden, verwenden Sie stattdessen etwas explizit lokales (localhost, 127.0.0.1).

Um vorübergehend zu beweisen, dass die Firewall die Verbindung unterbricht, bevor Sie Änderungen vornehmen, deaktivieren Sie sie für eine Minute vollständig und versuchen Sie es erneut. Wenn PHP-> SQL bei ausgeschalteter Firewall ist, muss Ihre Firewall-Konfiguration angepasst werden. Wenn die Firewall noch immer fehlschlägt, liegt das Problem woanders.

Danke für die Idee. Ich habe die Firewall ausgeschaltet, bekomme aber immer noch dasselbe Ergebnis. MySQL ist mit Standardeinstellungen (für EasyPHP) eingerichtet, und die Verbindung erfolgt zu localhost. Matt Ellen vor 14 Jahren 0
0
Jeff Atwood

geh dort hin

"Systemsteuerung >> System und Sicherheit >> Windows-Firewall >> Zugelassene Programme oder ..."

ok prüfe jetzt diese Optionen:

  1. BranchCache - Content Retrieval (Benutzer http)
  2. "" "" "" "" "" "" - Gehosteter Cache-Client (Benutzer https)
  3. "" "" "" "" "" "" - Gehosteter Cacheserver (Benutzer https)
  4. "" "" "" "" "" "" - Peer Discovery (Benutzer wsd)

genießen: D

0

All you need to do is edit the following file if you have an admin rights

c:\windows\system32\drivers\etc\hosts

by uncommenting the line that says

127.0.0.1 localhost 

Save and refresh your pages....

0
Kyle

Ich hatte dieses Problem.

So sollte es aussehen, wenn Sie Probleme haben:

<?php $connect = mysql_connect('127.0.0.1','root',''); ?> 

Um weitere Informationen zu Ihrer MySQL-Datenbank zu erhalten, klicken Sie mit der rechten Maustaste auf das ePHP-Symbol in der Symbolleiste und klicken Sie auf Admin ... -> Dann wird eine neue Seite geöffnet und klicken Sie auf mysql verwalten. Hoffe das hilft.