MySQL转储在数据库名称的开头有破折号

时间:2017-02-22 19:09:01

标签: php mysql

当数据库有短划线作为名字的第一个字符时,是否有人知道如何让mysqldump工作?例如:-s-oddly-named-db

我需要将此数据库转储为客户端的存档,但我从未见过有人使用短划线创建数据库作为第一个字符。在MySQL本身,我可以使用反向标记“使用”它,一切正常,但我无法使mysqldump工作。

mysqldump -p --databases '-s-oddly-named-db'

给我回复: mysqldump: unknown option '-s'

1 个答案:

答案 0 :(得分:-1)

使用--

例如:

mysqldump -u root -pXXXX --databases -- -xDatabase

更多关于--来自man bash的含义:

  

除非另有说明,否则每个内置命令都记录在此   作为接受选项的部分 - 接受 - 表示   选项结束。

编辑感谢@Barmar评论

使用--表示选项的结束是一种常见的约定,它由getopts()库函数实现。这大概就是为什么它适用于mysdqldump,即使它没有在文档中提及。