[英]How to execute mysql query with password in ansible playbook
Ansible 劇本:
情況1
- name: case 1
command: mysql -u root -p "MyNewPass_123" --execute="show databases;"
結果:
"stdout_lines": ["Please use --connect-expired-password option or invoke mysql in interactive mode."]
如果我在命令中添加“--connect-expired-password”,我會收到以下錯誤
ERROR 1820 (HY000) at line 1: You must reset your password using ALTER USER statement before executing this statement."
案例二
- name: case 2
command: mysql -u root -p --execute="show databases;"
結果:Playbook 等待輸入密碼。
我該怎么做?
首先安裝galaxy collection:
ansible-galaxy collection install community.mysql
之后可以使用模塊community.mysql.mysql_query
:
- name: Select query to db acme with positional arguments
community.mysql.mysql_query:
login_user: root
login_password: MyNewPass_123
login_db: ${DB_TO_USE}
query: SELECT * FROM table WHERE id = %s AND param = %s
positional_args:
- 1
- test
有關詳細信息,請參閱: https://docs.ansible.com/ansible/latest/collections/community/mysql/mysql_query_module.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.