有没有人知道当数据库以破折号作为名称的第一个字符时如何使mysqldump工作?例如:-s-oddly-named-db
我需要将该数据库转储为客户端的存档,但是我从未见过有人用破折号作为第一个字符来创建数据库。在MySQL本身中,我可以使用反引号“使用”它,并且一切正常,但是我无法使mysqldump正常工作。mysqldump -p --databases '-s-oddly-named-db'
给我以下答案:mysqldump: unknown option '-s'
最佳答案
通过使用--
例如 :mysqldump -u root -pXXXX --databases -- -xDatabase
关于--
在man bash
中的含义的更多信息:
除非另有说明,否则本文档中记录的每个内置命令
部分作为接受选项,其前面是-接受-表示
选项的结尾。
编辑感谢@Barmar评论
使用--
表示选项结束是一种常见约定,由getopts()
库函数实现。这可能就是为什么它可以与mysdqldump
一起工作的原因,即使文档中未提及。
关于php - MySQL转储在数据库名称的开头加上破折号,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42400227/