У меня странное состояние на моем сервере mysql/mariadb.
Когда я запускаю show databases;
он получает следующий результат:
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| MYDATABASENAME |
| mydatabasename |
И когда я выполняю drop database MYDATABASENAME;
то в базе данных mydatabasename
нижнем регистре mydatabasename
а не в верхнем регистре. Если я затем drop database MYDATABASENAME;
снова говорится
ERROR 1008 (HY000): невозможно удалить базу данных "mydatabasename"; базы данных не существует
ОБНОВИТЬ
В my.cnf я установил lower_case_table_names = 1, из-за чего сервер mysql обрабатывал все таблицы/базы данных в нижнем регистре. См. Мой ответ ниже.
Теперь мой вопрос: как я могу сбросить базу данных верхнего регистра "MYDATABASENAME"?
Если вы установили lower_case_table_names=1
в my.cnf
тогда mysql обрабатывает/сохраняет все таблицы и базы данных в нижнем регистре. Поэтому отключить свойство, а затем выполнить команду drop снова устранила проблему.
Лучше не пытаться переопределить значение по умолчанию на основе ОС для lower_case_table_names
.
MySQL/MariaDB зависят от имен файлов и каталогов на основе имен таблиц и баз данных. Но Windows игнорирует случай; * nix нет.