当数据库有短划线作为名字的第一个字符时,是否有人知道如何让mysqldump工作?例如:-s-oddly-named-db
我需要将此数据库转储为客户端的存档,但我从未见过有人使用短划线创建数据库作为第一个字符。在MySQL本身,我可以使用反向标记“使用”它,一切正常,但我无法使mysqldump工作。
mysqldump -p --databases '-s-oddly-named-db'
给我回复:
mysqldump: unknown option '-s'
答案 0 :(得分:-1)
使用--
例如:
mysqldump -u root -pXXXX --databases -- -xDatabase
更多关于--
来自man bash
的含义:
除非另有说明,否则每个内置命令都记录在此 作为接受选项的部分 - 接受 - 表示 选项结束。
编辑感谢@Barmar评论
使用--
表示选项的结束是一种常见的约定,它由getopts()
库函数实现。这大概就是为什么它适用于mysdqldump
,即使它没有在文档中提及。