At 9:31 +0000 2/23/04, [EMAIL PROTECTED] wrote:
"Rhino" <[EMAIL PROTECTED]> wrote on 21/02/2004 16:59:27:

 I am new to most aspects of MySQL administration so I was wondering
 if someone can help me figure out what GRANTs I need for a
 particular situation.

 I have a user who needs to be able to run some MySQL scripts that
 create and load tables in a database named NFL. He is accessing
 MySQL remotely from a client on a Windows machine. Our server is
 running in Linux Mandrake 9.1; the client is Windows 98SE.

 I've run the following grants for him:
 grant all on NFL.* to [EMAIL PROTECTED] indentified by 'xxxxx';
 grant all on NFL.* to [EMAIL PROTECTED] identified by 'xxxxx';
 grant file on NFL.* to [EMAIL PROTECTED] identified by 'xxxxx';
 grant file on NFL.* to [EMAIL PROTECTED] identified by 'xxxxx';

 When I try signing on as him from my remote Windows client, he can
 connect to MySQL and get to the mysql prompt. He can run the script
 which creates and loads the tables. However, he gets "Access Denied"
 on the Load Data Infile statements when the script executes.

 1. Why is this happening? The Load Data article says he needs the
 File privilege and I've given it to him. He also has all privileges
 on the NFL database. What more do I need to do for him?

 2. Are the privileges given to [EMAIL PROTECTED] redundant with the
 privileges given to [EMAIL PROTECTED] They *look* redundant to me; I
 suspect I've misinterpreted something I read in the manual. Can I
 get by with giving him just the [EMAIL PROTECTED] privileges? Do I
 need to give him anything else to account for the fact that he is
 coming in from a remote client?

I note that you are running a mixed Windows/Linux system. My experience is that using uppercase in such systems is a source of create problems. Since database names and table names for MyISAM tables are file names, they are case significant on Linux and non-significant on Windows. While I am sure that there is an analytic way of handling the problems which arise, I found that it was very difficult to understand and a source of avoidable confusion. I would recommend that in any case where mixed *nix and Windows systems are involved, you keep database and table names entirely to lower case. The world will give you enough unavoidable problems - don't add an avoidable one.

Alec

I would say that it shouldn't matter whether you use uppercase or lowercase. What matters is that you pick one lettercase and use it consistently.

Another option is to set lower_case_table_names to 1 on all platforms.
Before using it, however, you should change all database and table names
to lowercase manually.

--
Paul DuBois, MySQL Documentation Team
Madison, Wisconsin, USA
MySQL AB, www.mysql.com

MySQL Users Conference: April 14-16, 2004
http://www.mysql.com/uc2004/

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



Reply via email to