Case sensitivity in MySQL

Recently I wasted so much time on one problem, that it stayed in my mind. Actually, there was a fault of an inaccurate logging, but this is not the main issue right now. Nearly all the things that we describe in MySQL, are case insensitive. Namely, columns, functions, procedures, names and aliases are not case-sensitive. Trigger is an exception.

But as far as the database and table names are concerned, their case sensitivity depends on the OS.

In MySQL a database corresponds to a folder and a table to at least one file in the database folder. This means that in Windows, case in these names does not matter, whereas on Unix platform, it does.

We could use the MySQL parameter lower_case_table_names, but this one converts everything to lower case and if we are trying to migrate a database, we will have to convert existing database and table names preliminary.