>From: Joerg Bruehe [mailto:joerg.bruehe@stripped]
>Sent: Wednesday, January 19, 2011 10:43 AM
>Cc: Jerry Schwartz
>Subject: Re: Can't read dir of '.' (errno: 13)
>Jerry Schwartz wrote:
>> [JS] I have a related question: how can MySQL authenticate a user if file
>> system permissions won't let it read any databases?
>To me, your question sounds like you forgot the difference between
>server and client:
[JS] I don't think so, but perhaps I misunderstood the source of the error
mysql> show databases ;
ERROR 1018 (HY000): Can't read dir of '.' (errno: 13)
Are you saying that the mysql CLI needs to read some directory ('.', in this
case) in order to send mysqld a simple query like SHOW DATABASES? I would hope
it doesn't need a temporary file for that.
Who is issuing the errno 13, the client or the daemon?
Global Information Incorporated
195 Farmington Ave.
Farmington, CT 06032
860.674.8796 / FAX: 860.674.8341
Web site: www.the-infoshop.com
>- The MySQL server processes always run as the same operating system
> user (typically: "mysql"), and basic setup must ensure they have
> access rights to all files storing the database contents.
>- The client processes run on any machine (local or remote) as any user,
> and that OS user may be totally unrelated to the database user that
> will be authenticated.
>Just assume some application (with privilege checks!) accessed via the
>web: The web server (Apache, ...) executing the PHP (or other) code is
>running with some OS user ID which is the same for all application
>(database) users, and there is no need to define those application users
>on the machine running the server processes of Apache or MySQL.
>Joerg Bruehe, MySQL Build Team, joerg.bruehe@stripped
>ORACLE Deutschland B.V. & Co. KG, Komturstrasse 18a, D-12099 Berlin
>Geschaeftsfuehrer: Juergen Kunz, Marcel v.d. Molen, Alexander v.d. Ven
>Amtsgericht Muenchen: HRA 95603