如何删除这个数据库?

2014-03-08 02:27:52 +08:00
 webjin
mysql> show master status;
Empty set (0.00 sec)

mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| #mysql50#.ssh |
| mysql |
| test |
+--------------------+
4 rows in set (0.00 sec)

mysql> drop database #mysql50#.ssh ;
-> ;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
mysql>
3205 次点击
所在节点    MySQL
6 条回复
Livid
2014-03-08 02:32:23 +08:00
用一个 GUI 连上去试试。
VYSE
2014-03-08 03:03:42 +08:00
drop database `#mysql50#.ssh` or '#mysql50#.ssh'
try whatever
lowstz
2014-03-08 07:20:30 +08:00
假设 mysql 的 data 目录在 /var/lib/mysql 。
可以试试暴力删除该数据库的文件夹,不过不太清楚会出现啥不良后果 >.<
sudo rm -r '/var/lib/mysql/#mysql50#.ssh'

这种 '#' 字符开头的数据库名也是用 sql 语句死活创建不成功,
但是在 mysql 的 data 的目录下新建 '#mysql50#.ssh' 这样的文件夹,
然后用 show databases; 就能看到 '#' 开头的数据库名了,虽然 use 会一直出错。

Reference:
http://dev.mysql.com/doc/refman/5.0/en/identifiers.html
http://stackoverflow.com/questions/4584458/error-dropping-database-cant-rmdir-test-errno-17
http://superuser.com/questions/705913/delete-a-mysql-database-with-a-strange-name
Honwhy
2014-03-08 10:42:53 +08:00
#号是转义字符么?
webjin
2014-03-08 14:11:57 +08:00
解决了,在网上找到了答案~删除/var/lib/mysql 目下的.ssh文件夹。我也不知道文件夹是怎么来的
可能是这样的来了我写了一个这样的脚本做主从备份。
#!/usr/bin/env bash
su mysql
expect -c "
spawn scp /root/test root@192.168.0.11:/root
expect {
\"*assword\" {set timeout 300; send \"123456\r\";}
\"yes/no\" {send \"yes\r\"; exp_continue;}
}
expect eof"
exit
================网上找的正规mysql主从同步我搞了好久都没搞好。
webjin
2014-03-08 14:12:55 +08:00
#!/usr/bin/env bash
su mysql
expect -c "
spawn scp /val/lib/mysql/test root@192.168.0.11:/val/lib/mysql/test
expect {
\"*assword\" {set timeout 300; send \"123456\r\";}
\"yes/no\" {send \"yes\r\"; exp_continue;}
}
expect eof"
exit

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/103367

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX