1、准备SQL脚本
1、shell脚本:/tmp/mysql.sh
#!/bin/sh
mysql -h127.0.0.1 -uroot -pxxxxx dbbane < /tmp/mysql.sql
2、/tmp/mysql.sql
grant select *.* to dba@'%' identified by '******';
flush privileges;
3、yml文件做事件编排
---
- hosts: mysql
remote_user: root
tasks:
- name: copy sh
copy: src=/tmp/mysql.sh dest=/tmp mode=755
- name: copy sql
copy: src=/tmp/mysql.sql dest=/tmp mode=755
- name: 执行脚本
shell: /tmp/mysql.sh
2、准备IP地址
vi /etc/ansible/hosts
输入要执行的IP
[mysql]
xxx.xxx.xxx.xxx
xxx.xxx.xxx.xxx
xxx.xxx.xxx.xxx
xxx.xxx.xxx.xxx
xxx.xxx.xxx.xxx
.
.
.
3、执行语句
1、默认使用/etc/ansible/hosts文件
ansible-playbook mysql.yml
2、使用指定文件
ansible-playbook -i xxx.txt -l mysql mysql.yml
-i:指定文件名
-l:过滤IP分组