Ich habe einen Ubuntu-Server 22.04.1 auf dem läuft mysql.
Ich kann mit PHP ganz normal auf die Datenbank zugreifen. Nur leider mit python3 nicht. Ich habe das Internet schon gewälzt, aber kein Lösungsansatz war richtig.
Hier mal mein Demoscript:
Code: Alles auswählen
#!/usr/bin/python3
import mysql.connector
mydb = mysql.connector.connect(
host="127.0.0.1",
user="root",
password="meinpasswort",
database="einedatenbank"
)
print(mydb)
Wenn ich anstatt der IP "localhost" angebe bringt das auch keine Änderung. Über die shell kann ich mich auch in die datenbank einloggen.
Hier die Fehlermeldung:
Traceback (most recent call last):
File "/usr/local/lib/python3.10/dist-packages/mysql/connector/connection_cext.py", line 308, in _open_connection
self._cmysql.connect(**cnx_kwargs)
_mysql_connector.MySQLInterfaceError: Can't connect to MySQL server on '127.0.0.1:3306' (111)
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/var/www/html/mydb.py", line 22, in <module>
connection = conn.connect(host = '127.0.0.1',
File "/usr/local/lib/python3.10/dist-packages/mysql/connector/pooling.py", line 293, in connect
return CMySQLConnection(*args, **kwargs)
File "/usr/local/lib/python3.10/dist-packages/mysql/connector/connection_cext.py", line 129, in __init__
self.connect(**kwargs)
File "/usr/local/lib/python3.10/dist-packages/mysql/connector/abstracts.py", line 1237, in connect
self._open_connection()
File "/usr/local/lib/python3.10/dist-packages/mysql/connector/connection_cext.py", line 313, in _open_connection
raise get_mysql_exception(
mysql.connector.errors.DatabaseError: 2003 (HY000): Can't connect to MySQL server on '127.0.0.1:3306' (111)
Code: Alles auswählen
netstat -lnp | grep mysql
Code: Alles auswählen
unix 2 [ ACC ] STREAM LISTENING 70679 13146/mysqld /var/run/mysqld/mysqlx.sock
unix 2 [ ACC ] STREAM LISTENING 70116 13146/mysqld /var/run/mysqld/mysqld.sock
Code: Alles auswählen
nmap -p3306 127.0.0.1
Code: Alles auswählen
PORT STATE SERVICE
3306/tcp closed mysql