首页 文章

mysql drop database存在同名

提问于
浏览
0

我的mysql / mariadb服务器中有一个奇怪的状态 .

当我执行 show databases; 时,它得到以下结果:

MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| MYDATABASENAME         |
| mydatabasename         |

当我执行 drop database MYDATABASENAME; 时,数据库 mydatabasename 小写的一个被删除而不是大写的一个 . 如果我然后再次执行 drop database MYDATABASENAME; 它说

ERROR 1008(HY000):无法删除数据库'mydatabasename';数据库不存在

UPDATE

在my.cnf中,我设置了lower_case_table_names = 1,这导致mysql服务器以小写格式处理所有表/数据库 . 请参阅下面的答案 .

我现在的问题是,如何删除大写数据库“MYDATABASENAME”?

2 回答

  • 0

    如果你在 my.cnf 中设置了 lower_case_table_names=1 ,则mysql以小写格式处理/存储所有表和数据库 . 因此禁用该属性,然后再次执行drop命令修复了该问题 .

  • 1

    最好不要尝试覆盖 lower_case_table_names 的基于操作系统的默认值 .

    MySQL / MariaDB依赖于基于表和数据库名称的文件和目录名称 . 但Windows无视案例; * nix没有 .

相关问题