mysql临时密码由“< ”等字符组成

eagi6jfj  于 2021-06-18  发布在  Mysql
关注(0)|答案(0)|浏览(249)

所以我使用ansible在centos7上安装mysql 5.7。在mysql 5.7中,安装mysql后,temp root密码存储在/var/log/mysqld.log中。我的ansible任务所做的是读取临时密码,然后将root用户的密码更新为自定义密码。
在我测试的时候一切都很正常,直到这次随机生成的密码 ,:<vtBo6_q-h 。由于 < 在密码中,我无法登录mysql并更改根密码。在安装mysql时,有没有办法限制temp密码中的字符?或者在使用ansible登录mysql时有没有一种方法可以转义这些字符?
我的任务是:

- name: Update the mysql root password

mysql_user: name=root
          password="'{{ mysql_root_password }}'"
          check_implicit_admin=yes
          login_user=root
          login_password="{{ temp_password }}"
          state=present

ignore_errors: yes

我还尝试使用终端手动登录

mysql -uroot -p,:<vtBo6_q-h
bash: vtBo6_q-h: No such file or directory

因此,解决方案似乎把密码放在引号里。这在终端上起作用,但在ansible中用单引号传递密码似乎不起作用

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题