我的mysql / mariadb服务器中有一个奇怪的状态。
当我执行show databases;
时,会得到以下结果:
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| MYDATABASENAME |
| mydatabasename |
当我执行drop database MYDATABASENAME;
时,数据库mydatabasename
小写的一个被删除而不是大写的一个。如果我再次执行drop database MYDATABASENAME;
则说明
ERROR 1008(HY000):无法删除数据库'mydatabasename';数据库没有 存在
更新
在my.cnf中,我设置了lower_case_table_names = 1,这导致mysql服务器以小写格式处理所有表/数据库。请参阅下面的答案。
我现在的问题是,如何删除大写数据库“MYDATABASENAME”?
答案 0 :(得分:1)
如果您在lower_case_table_names=1
中设置了my.cnf
,那么mysql将以小写格式处理/存储所有表和数据库。因此禁用该属性,然后再次执行drop命令修复了问题。
答案 1 :(得分:0)
最好不要尝试覆盖 for (RegLife r : rLife) {
// use r here all you want.
for (largeLife l : lLives) {
// and use it here too..
// if that makes sense.
l.seek(r);
}
}
的基于操作系统的默认值。
MySQL / MariaDB依赖于基于表和数据库名称的文件和目录名称。但Windows无视案例; * nix没有。