Schreiben in eine Datei - Problem mit Rechten

wibri

Neuer Benutzer
Beiträge
3
Hallo allerseits :)

Bisher habe ich eine MariaDB-Datenbank lokal installiert. Es sind einige Tabellen und andere Objekte vorhanden und es wird von einem Programm aus auf diese Datenbank zugegriffen - das funktioniert so weit ganz gut.
Nun sollen Daten in eine Datei geschrieben werden.
Um auf die Datenbank zwecks Entwicklung zuzugreifen verwende ich HeidiSQL.

Wenn ich als root eingeloggt bin, funktioniert folgender Befehl einwandfrei:
SELECT 'hello' INTO OUTFILE '/tmp/vonMaria/eineDatei.txt';​
Die Datei wird erstellt.
Nun möchte ich aber nicht per root auf die Datenbank zugreifen, sondern mit einem User, der nur die nötigen Rechte dazu hat.
Also habe ich einen neuen User 'akmin' angelegt, ihm das Recht FILE gegeben, aber das funktionierte nicht. Die Fehlermeldung lautet:
SQL Fehler (1045): Access denied for user 'akmin'@'127.0.0.1' (using password: YES)​
akmin ist der User, der minimale aber ausreichende Rechte für das Schreiben der Datei haben soll.

Das Statement
SELECT p.* FROM information_schema.USER_PRIVILEGES AS p WHERE p.GRANTEE = "'root'@'localhost'";​
liefert 28 verschiedene Privilege_types:
SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE​
Ich habe dem User akmin verschiedene Rechte gegeben - letztendlich sogar alle hier aufgeführten, aber es kommt für den User akmin nach wie vor besagte Fehlermeldung.

Mir scheint, ich mache da etwas prinzipiell falsch, komme aber nicht darauf, was es ist.
Ich würde mich freuen, hier gute Hinweise zu beokmmen.

Versionen:
10.1.21-MariaDB
HeidiSQL: 9.5.0.5456 (32 Bit)
Läuft unter Win 7​

Vielen Dank im Voraus :)
Grüße von wibri
 
Werbung:
SQL Fehler (1045): Access denied for user 'akmin'@'127.0.0.1' (using password: YES)akmin ist der User, der minimale aber ausreichende Rechte für das Schreiben der Datei haben soll.

Das Statement
SELECT p.* FROM information_schema.USER_PRIVILEGES AS p WHERE p.GRANTEE = "'root'@'localhost'";liefert 28 verschiedene Privilege_types:


Mal ganz scharf nachgedacht: welche Rolle spielt es für den User 'akmin', welche Rechte 'root' hat?

Kommst Du selber drauf, oder?
 
welche Rolle spielt es für den User 'akmin', welche Rechte 'root' hat?
Natürlich spielt es für akmin keine Rolle, welche Rechte root hat. Das war auch nicht Inhalt meiner Frage. Das Aufführen beider User und deren Rechte hatte lediglich eine vergleichende Funktion.
Der Gedanke ist folgender:
Bei root klappt das Schreiben einer Datei, bei akmin nicht. Also haben die beiden unterschiedliche Rechte, die sich auf das Schreiben einer Datei auswirken. Also habe ich die Rechte von akmin erweitert bis sie schließlich die gleichen sind wie die des root. Trotzdem funktioniert das Schreiben der Datei nur bei root, nicht aber bei akmin.
Also muss noch irgendein anderer Umstand (außer den Rechten) zu dem Unterschied führen. Genau diesen Unterschied möchte ich wissen :)
 
Werbung:
Tja.

Verzeichnissrechte?

Sorry, ich nix MySQL. Nimm doch was gescheites, was vielleicht bei Bedarf auch bessere Fehlermeldungen rausgibt.
 
Zurück
Oben