2012-04-24 4 views
1

Je souhaite masquer certaines tables (certaines tables de définitions) de certains utilisateurs dans la base de données. Il y a cette table mysql.tables_priv qui est vide. Devrais-je insérer quelque chose dans cette table pour y arriver et quelle devrait être la valeur de la colonne 'table_priv'?MySql: Masquer certaines tables de certains utilisateurs

Répondre

0

Vous devriez regarder dans la commande SQL GRANT. Avec GRANT, vous pouvez attribuer des privilèges aux utilisateurs comme ceci:

GRANT SELECT ON table TO user; 
+0

Mais la table ** mysql.tables_priv ** est vide; Est-ce que cela signifie que chaque utilisateur a tous les droits sur chaque table? En outre, mon souci est de «révoquer» le droit de voir/éditer une table. – sunsa428

+0

Désolé, je ne suis pas un expert MySQL, je suppose que Google est votre ami;) – verhage

0

Si le tables_priv est vide, je crois que cela signifie aucun privilège a été accordé pour cette table de base de données. Vous pouvez effectuer un test rapide et accorder select sur database.table_name à l'utilisateur et voir si une ligne apparaît dans cette table. Mais normalement vos subventions sur les tables apparaissent dans cette table.

+0

Oui, j'ai accordé certains rôles à une table et ces entrées apparaissent dans le ** tables_priv **. Sinon, il n'y a rien dans cette table. Et il semble que tous les utilisateurs ont tous les droits sur toutes les tables !? – sunsa428

Questions connexes