【问题标题】:Ansible playbook error: Failed to find required executable mysql in pathsAnsible playbook 错误:无法在路径中找到所需的可执行 mysql
【发布时间】:2019-05-03 18:00:19
【问题描述】:

我正在尝试恢复 MySQL 数据库并显示此消息。

"msg": "在路径/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/sbin中找不到所需的可执行mysql失败"

MySQL 已安装在主机中(我已从命令行成功恢复)但是当我尝试执行模块时它不起作用。也尝试添加路径,但没有...有什么建议吗?

控制器操作系统 (macOS Mojave) 主机操作系统(macOS High Sierra) MySQL 8 ansible 2.7.4

# - name: add 'mysql' to path
#   lineinfile:
#     dest: /etc/paths
#     state: present
#     backrefs: yes
#     regexp: 'PATH=(["]*)((?!.*?/usr/local/mysql/bin/).*?)(["]*)$'
#     line: 'PATH=\1\2:/usr/local/mysql/bin\3'

# - name: add 'mysql' to path
#   shell: export PATH=$PATH:/usr/local/mysql/bin && echo $PATH

- name: Copy database dump file to host
  copy:
    src: dump.sql
    dest: /tmp

- name: Restore database
  mysql_db:
    login_user: root
    login_password: password
    state: import
    name: all
    target: /tmp/dump.sql

【问题讨论】:

  • 您可以尝试添加符号链接:ln -s /usr/local/mysql/bin/* /usr/local/sbin/

标签: mysql ansible


【解决方案1】:

我无法轻松测试该特定模块,但使用 大多数 ansible 模块,您可以使用 environment: 参数取代该模块调用的环境:

- mysql_db:
    etc: etc etc
  environment:
    PATH: /the/dir/with/mysql:{{ ansible_facts.env.PATH }}

【讨论】:

    【解决方案2】:

    正如 JGK 也评论的那样,该链接也可以正常工作!

    "你可以尝试添加符号链接:ln -s /usr/local/mysql/bin/* /usr/local/sbin/"

    【讨论】:

      猜你喜欢
      • 2017-05-11
      • 1970-01-01
      • 2015-08-27
      • 2022-07-19
      • 2020-09-19
      • 2021-11-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多