【问题标题】:Escape password in mysqldump command在 mysqldump 命令中转义密码
【发布时间】:2015-06-22 23:27:07
【问题描述】:

我正在使用这个;

mysqldump -u userabc -pabc123 dbname | 
  gzip > /var/backups/archives/mysql/dbname_$(date +\%d-\%m-\%Y_\%T).sql.gz

这可行,但如果密码包含 ^ 例如失败,我如何转义此字符并仍然让 mysqldump-p 标志一起使用;

mysqldump -u userabc -pabc^123 dbname | 
  gzip > /var/backups/archives/mysql/dbname_$(date +\%d-\%m-\%Y_\%T).sql.gz

【问题讨论】:

    标签: mysql passwords mysqldump


    【解决方案1】:

    引用密码

    mysqldump -u fred7 -p'asdf^555^666'
    

    如果有以下任何* ? [ < > & ; ! | $ ( ) 也可能是^

    【讨论】:

    • 注意一个例外,当使用'单引号时,如果密码中出现单引号,bash shell需要非常奇怪的转义——嵌入的'必须替换为4个连续字符' \ ' ' 并没有像您期望的那样使用简单的 \' 进行转义。
    • 好知识@Michael-sqlbot!
    • 感谢@DrewPierce。我可以确认^ 也是这些字符之一。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-12-17
    • 1970-01-01
    • 2013-04-15
    • 2013-11-23
    • 2014-11-01
    • 2023-03-25
    • 1970-01-01
    相关资源
    最近更新 更多