Der Versuch, einige einfache Abfragen für eine remote MariaDB-Instanz auszuführen. (Anmerkung: Ich versuche nicht, Modelle anzuwenden etc.)Zugriff verweigert für Benutzer (1044) - Django & MariaDB
Ich habe Schreibweisen vervierfachen geprüft und ich kann mit anderen Anwendungen auf dem gleichen Benutzer verbinden/pass/Port/Hostnamen usw.
Aber immer, wenn ich versuchen, eine Abfrage auszuführen, die ich erhalten:
(1044, "Access denied for user 'xyz_user'@'%' to database 'xyz_name'")
ich den 'xyz_user'@'%'
Teil ein wenig seltsam finden, würde ich annehmen, dass es aussehen gemeint: 'xyz_user'@'xyz_name'
...
setings.py:
'xyz_db': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'xyz_name',
'USER': 'xyz_user',
'PASSWORD': 'xyz_pass',
'HOST': 'xyz_hostname',
'PORT': '1234',
}
Ansichten Modul:
from django.db import connections
...
def some_func():
cursor = connections['xyz_db'].cursor()
cursor.execute("SELECT user FROM xyz_table LIMIT 2")
row = cursor.fetchone()
return row
Einsicht, was ich falsch tun könnte sehr zu schätzen!
Haben Sie xyz_user Berechtigungen erteilen xyz_name? –
Ja, wie ich bereits erwähnt habe, kann ich mich anmelden und Abfragen von anderen Anwendungen ausführen, z. B. MySQL Workbench. Ich überprüfe die Konnektivität jetzt doppelt - obwohl die Fehleranzeigeberechtigungen scheinen, scheinen sie nicht das Problem zu sein, und ich verbinde von Workbench über eine andere Maschine als der Django-Host. –
Ich interpretierte andere Anwendungen als auch andere Datenbanken. –