剧本错误:无法在路径中找到所需的可执行mysql

时间:2018-12-02 02:41:14

标签: mysql ansible

我正在尝试还原MySQL数据库,并显示此消息。

“ msg”:“在以下路径中找不到所需的可执行mysql:/ usr / bin:/ bin:/ usr / sbin:/ sbin:/ usr / local / sbin”

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

2 个答案:

答案 0 :(得分:0)

我无法轻松地测试该特定模块,但是使用个可用的模块,您可以使用environment:参数来替换该模块的调用环境:

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

答案 1 :(得分:0)

JGK也评论说,该链接也可以正常工作!

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