首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在ansible剧本中使用密码执行mysql查询

如何在ansible剧本中使用密码执行mysql查询
EN

Stack Overflow用户
提问于 2020-12-18 08:08:01
回答 1查看 1.4K关注 0票数 0

可供选择的剧本:

案例1

代码语言:javascript
复制
- name: case 1
  command: mysql -u root -p "MyNewPass_123" --execute="show databases;"

结果:

代码语言:javascript
复制
 "stdout_lines": ["Please use --connect-expired-password option or invoke mysql in interactive mode."]

如果我将“--连接-过期-密码”添加到命令中,则会得到以下错误

代码语言:javascript
复制
ERROR 1820 (HY000) at line 1: You must reset your password using ALTER USER statement before executing this statement."

案例2

代码语言:javascript
复制
- name: case 2
  command: mysql -u root -p --execute="show databases;"

结果:剧本等输入密码。

我该怎么做呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-12-18 09:30:07

首先安装星系集合:

代码语言:javascript
复制
ansible-galaxy collection install community.mysql

在您可以使用模块community.mysql.mysql_query之后

代码语言:javascript
复制
- 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

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65353589

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档