On Unix, the default value of lower_case_table_names
is 0. On Windows, the default value is 1. On Mac OS X, the default value is 1 through MySQL 4.0.18 and 2 since 4.0.18.
To fix this, you can find the parameter: lower_case_table_names in the my.ini file found in or around: C: \ Program Files \ MySQL \ MySQL Server 4.1, depending on the version you are running on. If you do not find this parameter, you can simply add it to the end of the my.ini file, as I did, for example:
lower_case_table_names=0
Remember to restart the MySQL service before checking to see if it works.
If you use MySQL on only one platform, you usually do not need to change the value of the lower_case_table_names variable from the default value. However, you may encounter difficulties if you want to transfer tables between platforms that are case sensitive in the file system. For example, on Unix, you can have two different tables named my_table and MY_TABLE, but on Windows these names are considered identical. To avoid data transfer problems arising from the alphabetic designation of database names or tables, you have two options:
Use lower_case_table_names = 1 for all systems. The main disadvantage of this is that when you use SHOW TABLES or SHOW DATABASES, you do not see the names in their original booklet.
Use lower_case_table_names = 0 on Unix and lower_case_table_names = 2 on Windows. This preserves the case of letters of database and table names. The disadvantage of this is that you have to make sure that your statements always refer to your databases and table names with the correct letter in Windows. If you submit your statements to Unix, where the case of letters is significant, they do not work if the letter format is incorrect.
Exception: if you use InnoDB tables and try to avoid these data transfer problems, you must set lower_case_table_names to 1 on all platforms to force names to be lowercase.
If you plan to set the lower_case_table_names system variable to 1 on Unix, you must first convert the old database and table names to lower case before stopping mysqld and restarting it with the new variable setting.
For more information about this, visit the MySQL website and some important warnings http://dev.mysql.com/doc/refman/4.1/en/identifier-case-sensitivity.html