1. Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, MariaDB, Oracle, Sql-Server, Postgres, Access uvm
    Information ausblenden

Schreiben in eine Datei - Problem mit Rechten

Dieses Thema im Forum "MySQL und MariaDB" wurde erstellt von wibri, 21 Oktober 2019.

  1. wibri

    wibri Neuer Benutzer

    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
     
  2. akretschmer

    akretschmer Datenbank-Guru


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

    Kommst Du selber drauf, oder?
     
  3. wibri

    wibri Neuer Benutzer

    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 :)
     
  4. akretschmer

    akretschmer Datenbank-Guru

    kann sich akmin denn überhaupt anmelden?

    "Access denied for user 'akmin'@'127.0.0.1' (using password: YES)"
     
  5. wibri

    wibri Neuer Benutzer

    Ja, akmin ist angemeldet.
     
  6. akretschmer

    akretschmer Datenbank-Guru

    Tja.

    Verzeichnissrechte?

    Sorry, ich nix MySQL. Nimm doch was gescheites, was vielleicht bei Bedarf auch bessere Fehlermeldungen rausgibt.
     
Die Seite wird geladen...

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden