dubis Asked: 2018-07-26 12:00:39 +0800 CST2018-07-26 12:00:39 +0800 CST 2018-07-26 12:00:39 +0800 CST 如何删除名称中包含元字符的数据库 772 如何删除名称中包含元字符的数据库。数据库名称是#mysql50#lost+found. 我以root用户身份连接mysql。我试图像在 shell 命令中那样放置反斜杠: MariaDB [(none)]> DROP DATABASE '\#mysql50\#lost\+found' ; ERROR 1064 (42000): You have an error in your SQL syntax; 它不起作用 mysql mariadb 2 个回答 Voted Best Answer DopeGhoti 2018-07-26T12:07:48+08:002018-07-26T12:07:48+08:00 使用反引号作为对象名称;不是反斜杠来转义单个字符: mysql> drop database `#really-bad+name`; Query OK, 0 rows affected (0.00 sec) A.B 2018-07-26T13:57:59+08:002018-07-26T13:57:59+08:00 对于问题中的特定问题,数据库#mysql50#lost+found是安装在(可能)上的文件系统的人工制品,该文件系统/var/lib/mysql在lost+found 使用fsck. 所以这个目录应该通过告诉 MariaDB 忽略它来单独留下。在/etc/my.cnf或其他类似的地方,添加: ignore-db-dir=lost+found 并重新启动数据库服务器。 参考:MySQL / MariaDB
使用反引号作为对象名称;不是反斜杠来转义单个字符:
对于问题中的特定问题,数据库
#mysql50#lost+found
是安装在(可能)上的文件系统的人工制品,该文件系统/var/lib/mysql
在lost+found
使用fsck
.所以这个目录应该通过告诉 MariaDB 忽略它来单独留下。在
/etc/my.cnf
或其他类似的地方,添加:并重新启动数据库服务器。
参考:MySQL / MariaDB