Heim > Datenbank > MySQL-Tutorial > Warum kann ich mit PyMySQL keine Verbindung zu MySQL auf Localhost herstellen?

Warum kann ich mit PyMySQL keine Verbindung zu MySQL auf Localhost herstellen?

DDD
Freigeben: 2024-11-04 11:51:12
Original
824 Leute haben es durchsucht

Why Can't I Connect to MySQL on Localhost with PyMySQL?

Probleme beim Herstellen einer Verbindung zu MySQL mit PyMySQL auf Localhost

Beim Versuch, mit PyMySQL eine Verbindung zu MySQL auf Localhost herzustellen:

<code class="python">import pymysql
conn = pymysql.connect(db='base', user='root', passwd='pwd', host='localhost')</code>
Nach dem Login kopieren

Möglicherweise tritt der folgende Fehler auf:

socket.error: [Errno 111] Connection refused
pymysql.err.OperationalError: (2003, "Can't connect to MySQL server on 'localhost' (111)")
Nach dem Login kopieren

Dieses Problem besteht sowohl in Python 2.7 als auch in Python 3.2 weiterhin, obwohl MySQL ausgeführt wird, was durch erfolgreiche Verbindungen über den MySQL-Befehl oder phpMyAdmin bestätigt wurde. Darüber hinaus funktioniert ein nahezu identischer Codeausschnitt mit MySQLdb in Python 2.

Mögliche Lösungen

Zwei mögliche Erklärungen für dieses Problem:

  1. Socket-Standort: Mysqladmin-Variablen verwenden | grep socket, um den Socket-Standort zu identifizieren und eine Verbindung herzustellen mit:
<code class="python">pymysql.connect(db='base', user='root', passwd='pwd', unix_socket="/tmp/mysql.sock")</code>
Nach dem Login kopieren
  1. Portzuweisung: Überprüfen Sie mithilfe von mysqladmin-Variablen, ob der Port auf 3306 eingestellt ist | grep-Port. Wenn es anders ist, geben Sie den Port manuell in der Verbindung an:
<code class="python">pymysql.connect(db='base', user='root', passwd='pwd', host='localhost', port=XXXX)</code>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWarum kann ich mit PyMySQL keine Verbindung zu MySQL auf Localhost herstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage