188 MySQL - Technische Referenz f¨ur Version 5.0.1-alpha
Beschreibung der Berechtigungen des Benutzers zu formulieren. Die Regeln, nach denen
hierbei vorgegangen wird, sind in Abschnitt 5.2.9 [Request access], Seite 195 beschrieben.
Geltungsbereichsfelder sind Zeichenketten, die wie unten dargestellt deklariert werden. Der
Vorgabewert f¨ur jedes Feld ist die leere Zeichenkette:
Feldname Typ
Host CHAR(60)
User CHAR(16)
Password CHAR(16)
Db CHAR(64) (CHAR(60) f¨ur die tables_priv- und columns_priv-
Tabellen)
Table_name CHAR(60)
Column_name CHAR(60)
In den user-, db- und host-Tabellen werden alle Felder als ENUM(’N’,’Y’) deklariert. Jedes
Feld kann einen Wert von ’N’ oder ’Y’ haben. Der Vorgabewert ist ’N’.
In den tables_priv- und columns_priv-Tabellen werden Felder als SET-Felder deklariert:
Tabellenname Feldname M¨ogliche Set-Elemente
tables_priv Table_priv ’Select’, ’Insert’, ’Update’, ’Delete’,
’Create’, ’Drop’, ’Grant’, ’Referenzs’,
’Index’, ’Alter’
tables_priv Column_priv ’Select’, ’Insert’, ’Update’, ’References’
columns_priv Column_priv ’Select’, ’Insert’, ’Update’, ’References’
Kurz gesagt benutzt der Server die Berechtigungstabellen wie folgt:
• Das user-Tabellenbereichsfeld legt fest, ob eingehende Verbindungen zugelassen oder
a/jointfilesconvert/293675/bgewiesen werden. Bei zugelassenen Verbindungen zeigen Berechtigungen, die in der
user-Tabelle vergeben sind, die globalen (Superuser-) Rechte des Benutzers an. Diese
Berechtigungen treffen auf alle Datenbanken auf dem Server zu.
• Die db- und host-Tabellen werden zusammen benutzt:
− Die Geltungsbereichsfelder der db-Tabelle legen fest, welche Benutzer auf welche
Datenbanken von welchen Hosts aus zugreifen k¨onnen. Die Berechtigungsfelder
legen fest, welche Operationen zugelassen sind.
− Die host-Tabelle wird als Erweiterung der db-Tabelle benutzt, wenn Sie wollen,
dass ein gegebener db-Tabelleneintrag auf verschiedene Hosts zutrifft. Wenn Sie
zum Beispiel wollen, dass ein Benutzer eine Datenbank von mehreren Hosts in
Ihrem Netzwerk aus b enutzen kann, lassen Sie den Host-Wert in der db-Tabelle
des Benutzers leer, und f¨ullen dann die host-Tabelle mit einem Eintrag f¨ur jeden
dieser Hosts. Dieser Mechanismus ist ausf¨uhrlicher in Abschnitt 5.2.9 [Request
access], Seite 195 beschrieben.
• Die tables_priv- und columns_priv-Tabellen sind der db-Tabelle ¨ahnlich, aber
feink¨orniger: Sie beziehen sich auf Tabellen- und Spaltenebenen und nicht auf
Datenbankebene.
Beachten Sie, dass die Verwaltungsberechtigungen (reload, shutdown usw.) nur in der user-
Tabelle festgelegt werden. Das liegt daran, dass Verwaltungsoperationen Operationen auf
dem Server selbst sind und nicht Datenbank-spezifisch, so dass es keinen Grund gibt, solche
Comentarios a estos manuales