我如何修复密码在mysql中读取



我有一个问题。我有需要在终端连接到MySQL数据库的代码。但是我无法打开,因为这个密码不支持%pK]-K8FgAM,HS8$7} y

mysql -N -h 127.0.0.1 -P 3306 -u test -p%pK]-K8FgAM,HS8$7}uY -D read 

输入mysql -h localhost -u username -p它会在终端

中询问密码

密码可以用单引号括起来

mysql -N -h 127.0.0.1 -P 3306 -u test -p'%pK]-K8FgAM,HS8$7}uY' -D read 

问题是$字符是由shell特殊解释的。参见下面的插图

$ echo %pK]-K8FgAM,HS8$7}uY
%pK]-K8FgAM,HS8}uY
$ echo '%pK]-K8FgAM,HS8$7}uY'
%pK]-K8FgAM,HS8$7}uY

所以,请把密码用单引号括起来。

谢谢大家。我用这种方法找到了问题

username='test'
password='%pK]-K8FgAM,HS8$7}uY'
database='read'
mysql -N -h 127.0.0.1 -P 3306 -u $username -p$password -D $database

最新更新