Michael Stassen wrote:

That word "global" is the key.

CREATE TEMPORARY TABLES, LOCK TABLES

And only ALL privileges on its own database. phpMyadmin is not
actually allowing access to other databases with this user, but it
does LIST them, which I do not like either. How can I revert things
back to the way they were, namely with not showing any database the
user has no access to?

You may find that testuser can lock tables and create temporary tables in those other dbs!

(N.B. Perhaps the CREATE TEMPORARY TABLES has something to do with
it? I think it came with an ugrade script once, for 3.32 to 4.0.x).

The answer is right there.  You granted testuser the LOCK TABLES and
CREATE TEMPORARY TABLES privileges on all dbs (*.*).  Hence testuser
has the right to see all dbs listed.  Try

  REVOKE CREATE TEMPORARY TABLES, LOCK TABLES ON *.*
  FROM 'testuser'@'localhost';


That did it! Solved. :) Thank you!!

Now that you mention it, yes, it makes perfect sense. I guess I never suspected such global behavior change when I ran "mysql_fix_privilege_tables" when I upgraded to 4.0.21 (from 3.23.58, I believe).

Anyway, thank you!

- Mark



--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]



Reply via email to