Informationen zum "mysql" Schema gesucht
Informationen zum "mysql" Schema gesucht
am 07.03.2007 16:03:33 von Phil Meier
Hi NG
Bin auf der Suche nach Dokumentation zum "mysql" Schema. Die Doku zum
"information_schema" Schema habe ich
(http://dev.mysql.com/doc/refman/5.1/de/information-schema.h tml), aber
etwas entsprechendes zum "mysql" Schema habe ich bisher leider nicht
gefunden?
Hat mir jemand von Euch einen Link?
Phil
Re: Informationen zum "mysql" Schema gesucht
am 07.03.2007 16:12:17 von Christian Kirsch
Am 07.03.2007 16:03 schrieb Phil:
Wer?
> Bin auf der Suche nach Dokumentation zum "mysql" Schema. Die Doku zum
> "information_schema" Schema habe ich
> (http://dev.mysql.com/doc/refman/5.1/de/information-schema.h tml), aber
> etwas entsprechendes zum "mysql" Schema habe ich bisher leider nicht
> gefunden?
>
AFAIK handelt es sich beim mysql um eine DB, die lediglich interne
Daten verwaltet. Alles, was Du darüber wissen kannst, verraten Dir
geeignete Abfragen an information_schema. *Tun* solltest Du mit dem
Inhalt von mysql gar nix, denke ich.
> Hat mir jemand von Euch einen Link?
In älteren MySQL-Versionen (vor 4) gab's m.W. im Zusammenhang mit
Benutzerrechten eine kurze Beschreibung von mysql.user, mysql.host und
mysql.db. Trotzdem: Finger weg.
Re: Informationen zum "mysql" Schema gesucht
am 07.03.2007 17:24:32 von Phil Meier
Christian Kirsch schrieb:
>> Bin auf der Suche nach Dokumentation zum "mysql" Schema. Die Doku zum
>> "information_schema" Schema habe ich
>> (http://dev.mysql.com/doc/refman/5.1/de/information-schema.h tml), aber
>> etwas entsprechendes zum "mysql" Schema habe ich bisher leider nicht
>> gefunden?
>>
>
> AFAIK handelt es sich beim mysql um eine DB, die lediglich interne
> Daten verwaltet. Alles, was Du darüber wissen kannst, verraten Dir
> geeignete Abfragen an information_schema. *Tun* solltest Du mit dem
> Inhalt von mysql gar nix, denke ich.
>
Danke für Deine Meinung.
Habe gerade per googling eine andere Meinung gefunden:
http://www-user.tu-chemnitz.de/~dgr/mysql-einf/teil32.html
>> Hat mir jemand von Euch einen Link?
>
> In älteren MySQL-Versionen (vor 4) gab's m.W. im Zusammenhang mit
> Benutzerrechten eine kurze Beschreibung von mysql.user, mysql.host und
> mysql.db. Trotzdem: Finger weg.
Wie komme ich z.B. an die Information, welche MySQL User definiert sind
wenn nicht per Zugriff auf die mysql-DB?
SELECT * FROM mysql.user;
Der Hintergrund meiner Frage ist, dass ich in einer Applikation
DBA-Funktionalität implementieren muss wie:
* User anlegen und löschen.
* Abfrage ob eine bestimmte Tabelle/Spalte existiert oder nicht.
* etc.
Deshalb interessiert mich die Information, ob ich die mysql-System-DB
für manche Funktionen verwenden soll oder besser nicht.
Re: Informationen zum "mysql" Schema gesucht
am 07.03.2007 17:43:15 von Axel Schwenke
Phil wrote:
> Christian Kirsch schrieb:
>> AFAIK handelt es sich beim mysql um eine DB, die lediglich interne
>> Daten verwaltet.
....
>> In älteren MySQL-Versionen (vor 4) gab's m.W. im Zusammenhang mit
>> Benutzerrechten eine kurze Beschreibung von mysql.user, mysql.host und
>> mysql.db. Trotzdem: Finger weg.
>
> Wie komme ich z.B. an die Information, welche MySQL User definiert sind
> wenn nicht per Zugriff auf die mysql-DB?
>
> SELECT * FROM mysql.user;
Ja, das ist so ziemlich das einzig sinnvolle, was du an Abfrage an
Tabellen in der `mysql` Datenbank tun kannst. Schon wenn du die
vergebenen Rechte erfahren willst, ist SHOW GRANTS besser als SELECT.
> Der Hintergrund meiner Frage ist, dass ich in einer Applikation
> DBA-Funktionalität implementieren muss wie:
> * User anlegen und löschen.
> * Abfrage ob eine bestimmte Tabelle/Spalte existiert oder nicht.
> * etc.
>
> Deshalb interessiert mich die Information, ob ich die mysql-System-DB
> für manche Funktionen verwenden soll oder besser nicht.
Wenn du als MySQL-Superuser unterwegs bist, kannst du die Tabellen
aus `mysql` abfragen und auch modifizieren. Entsprechende Hinweise
gibt das Handbuch. Allerdings gibt es gerade für das Modifizieren
i.d.R. geeignetere Sprachmittel. Also statt UPDATE auf mysql.user
besser GRANT/REVOKE etc. Eigene Tabellen anlegen oder vorhandene
Tabellen zu erweitern, solltest du dir allerdings verkneifen.
XL