Database listing / Databases showing

Hi all,

This is probably something very basic, but I really don't see how to accomplish it.

I have a MySQL server with multiple databases on it, with multiple users. Every user has full control over it's own databases and is denied access to the others.

However, when someone connects to the server, he/she can list all other databases on the system. Since these are clients, obviously, I do not want them to see the other databases.

Is there a way to prevent this?

Thanks,

Wim
LVL 1
WimmekeAsked:
Who is Participating?
 
drittichConnect With a Mentor Commented:
I believe you can start MySQL with this option:

mysqld --safe-show-database

"With this option, the SHOW DATABASES command returns only those databases for which the user has some kind of privilege. From version 4.0.2 this option is deprecated and doesn't do anything (the option is enabled by default) as we now have the SHOW DATABASES privilege."
0
 
kelfinkCommented:
According to: http://www.mysql.com/doc/S/H/SHOW_DATABASE_INFO.html ,

In version 4.02, a SHOW DATABASES permission will be necessary to show a database, unless the use has some other permission on that database.
0
 
WimmekeAuthor Commented:
I have version 4.1.2 but I cannot find this option anywhere. Thing is ... all users only have read-rights on their databases and no rights at all on other databases.

So I guess this means that the SHOW DATABASES permission is loaded by default when creating a database. I tried a revoke, but seems not to work.
0
Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
vasan_srCommented:
u can set the permission in the mysql database.

mysql> show databases;
mysql> use mysql

This has 6 tables...wherein we can set the permissions.

regards
VasanS
0
 
kelfinkCommented:
I meant mysql version 4.0.2.  Is there a beta of 4.1.2 available already, or are you talking about some other software?
0
 
WimmekeAuthor Commented:
Sorry, you're right. I gave you the version number of PHP instead of MySQL ... anyways, I have version 3.23.39 :-)

So I guess there's no way to accomplish this with my current version? Or is there?
0
 
kelfinkCommented:
well done, drittich.  I only knew of the new privilege.  

Then again, my own databases only have one security user!
0
 
drittichCommented:
Yeah, I have never actually needed it either!
0
 
WimmekeAuthor Commented:
Sorry guys, forgot about this question :-$

I will close it now and award the point to drittich. This is indeed the solutions.

Thanks

Wim
0
 
philcartmellCommented:
Hi,

I am running mysql v4.0.12 and revoke show databases from x doesnt see to work. any ideas?
0
All Courses

From novice to tech pro — start learning today.