Problem:
Ein in Confixx angelegter MySQL-User bekommt alle Datenbanken angezeigt. Nutzen kann er zwar nur seine eigenen, aber dennoch ist dieses Verhalten unerwünscht.
Erklärung:
Nach einem Update auf MySQL 4 (oder auf manchen Systemen, wo bereits MySQL 4 installiert ist) werden die Felder create_tmp_table_priv
und Lock_tables_priv
in der Tabelle mysql.user nicht mehr belegt. Default-Werte sind allerdings Y
.
Lösung:
Folgende SQL-Befehle lösen das Problem dauerhaft. Sie müssen als 'root' ausgeführt werden:
#Vorhandene User einstellen: UPDATE user SET Create_tmp_table_priv='N', Lock_tables_priv='N' WHERE user LIKE 'web%'; #Default-Wert einstellen: ALTER TABLE user MODIFY Create_tmp_table_priv ENUM('N','Y') DEFAULT 'N'; ALTER TABLE user MODIFY Lock_tables_priv ENUM('N','Y') DEFAULT 'N'; #Benutzerrechte neu einlesen: flush privileges;