scl启用rh-mariadb102 bash不';我不能用Ansible剧本

scl启用rh-mariadb102 bash不';我不能用Ansible剧本,ansible,mariadb,software-collections,Ansible,Mariadb,Software Collections,我是个新手。。。这似乎是一个与一个非常有趣的社区分享知识和找到解决方案的好地方 我对Ansble和“scl”“mysql\u install\u dir”命令有问题 当我手动执行“scl enable rh-mariadb102 bash&&mysql\u install\u dir…”时,当我在服务器控制台中正确执行时,它可以完美地工作 但当我尝试在Ansible上构建任务时: - name: "Execute mysql_install_db to prepare DB" shell:

我是个新手。。。这似乎是一个与一个非常有趣的社区分享知识和找到解决方案的好地方

我对Ansble和“scl”“mysql\u install\u dir”命令有问题

当我手动执行“scl enable rh-mariadb102 bash&&mysql\u install\u dir…”时,当我在服务器控制台中正确执行时,它可以完美地工作

但当我尝试在Ansible上构建任务时:

- name: "Execute mysql_install_db to prepare DB"
  shell: |
    scl enable rh-mariadb102 bash
    mysql_install_db --datadir=/data/{{ item.instance_name }}/db/mariadb102
  become_user: root
  with_items: "{{ vars_list }}"
它返回错误:

“使用\“scl启用rh-mariadb102服务…”\“调用”

这似乎Ansible无法很好地执行scl enable命令。。。或者类似的事情

以前有人遇到过这个问题吗


谢谢你的帮助,为英语不好而难过

使用
scl
命令打开子shell并再次关闭它。像这样的方法应该会奏效:

- name: "Execute mysql_install_db to prepare DB"
  shell: |
    scl enable rh-mariadb102 -- mysql_install_db --datadir=/data/{{ item.instance_name }}/db/mariadb102
  become_user: root
  with_items: "{{ vars_list }}"

也就是说,在
scl enable

下运行实际命令,解释您在每个步骤中所做的操作。感谢您的帮助,这解决了我的问题!我试图用&&&执行命令scl和mysql_install_db。。。或任何其他方式=不工作。我并不完全了解scl的亚地狱机制。现在我的多实例rh-mariadb102剧本正在运行。