MySQL 使用 Ansible 任务运行 SELECT 查询
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/30605950/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Running a SELECT Query with an Ansible Task
提问by Sam Hammamy
In thislist of mysql db modules for Ansbile, there's one for creating a db, or creating a user, etc.
在此对Ansbile MySQL数据库模块列表中,有一个用于创建数据库,或创建一个用户,等等。
I would like to run a query against a pre-existing table and use the results of that query to populate an Ansible variable (list of IP addresses, and node type) upon which I would run different tasks, depending on node type.
我想对预先存在的表运行查询,并使用该查询的结果来填充 Ansible 变量(IP 地址列表和节点类型),我将根据节点类型运行不同的任务。
How can that be done in Ansible?
如何在 Ansible 中做到这一点?
回答by Antonis Christofides
This is approximately how to do it (but it is untested):
这大约是如何做到的(但它未经测试):
- name: Retrieve stuff from mysql
command: >
mysql --user=alice --password=topsecret dbname
--host=147.102.160.1 --batch --skip-column-names
--execute="SELECT stuff from stuff_table"
register: stuff
check_mode: no
changed_when: False
- name: Do something with stuff
debug: "{{ item }}"
with_items: stuff.stdout_lines
Documented here.
记录在这里。