Readonly tabelle (mysql)

  • Tach.

    Google und manual bringen mich grade nicht weiter (oder ich suche falsch).
    Seis drum, ich bräuchte mal jemanden mit mehr Ahnung.

    Ziel ist es, eine Tabelle anzulegen, welche nicht beschreibbar ist.
    Diese wird beim Erstellen mit ein paar Daten gefüllt und soll dann NIE wieder beschrieben werden. Ich kenne (und finde) nur 'WRITE LOCK', was die tabelle nur Threadweise sperrt.
    Nun kann ich zwar für jeden Thread manuell 'WRITE LOCK' setzen, aber gibt es keine Möglichkeit, sowas einfach einmal global zu setzen (Script oder direkt in der DB, is mir egal)?

    Danke fürs Helfen,

    Jojo


  • Dein Link hilft mir insofern nicht, dass eine Schreibmöglichkeit implementiert werden soll, sagen zumindest die Entwickler.
    Zugriff auf das Dateisystem habe ich leider nicht (immer).

    Wie funktioniert das mit dem Readonly User genau?
    Ich kenn das nur so, dass das dann für die gesamte DB gilt, allerdings sollen User durchaus in die ein oder andere Tabelle schreiben dürfen. Oder überseh ich da was?


  • Du musst also eine Tabelle nur für bestimmte User sperren? Hmm, da bin ich im Moment überfragt.

  • So der (my)sql Profi bin ich jetzt leider nicht. Aber vielleicht lässt sich das mit einem BEFORE UPDATE-/BEFORE INSERT-Trigger auf die Tabelle lösen? Als Verhalten dann eben, dass der Befehl nicht ausgeführt wird. Ich weiß zwar nicht genau wie da der Befehl aussehen müßte, aber könnte mir schon vorstellen, dass das geht.

    "Programming today is a race between software engineers
    striving to build bigger and better idiot-proof programs,
    and the universe trying to build bigger and better idiots.
    So far, the universe is winning."
    Rick Cook

  • Habe es selber nicht ausprobiert, aber in der Datenbank mysql, Tabelle db kann man User und entsprechende Rechte konfigurieren. Unter Db kann man Datenbankname\Tabellenname angeben. Aber ohne Gewähr, probiere das erst mal in einer Testumgebung aus, bevor du da was zerdrischt.