【问题标题】:Ansible & MySQL Remote PermissionsAnsible 和 MySQL 远程权限
【发布时间】:2014-07-10 03:19:14
【问题描述】:

我似乎在使用 Ansible 并创建用户并为其设置远程权限时遇到问题。我正在尝试创建一个通过单独的 API 服务器远程访问特定数据库服务器的用户。

mysql_user: login_user=root login_password=password name=sampleUser password=password priv=sampleDatabase.'192.168.33.8':ALL state=present

我做...priv=sampleDatabase.*:All...时一切正常

Ansible 在控制台中抛出的错误似乎取消了格式设置,如下所示:

_mysql_exceptions.ProgrammingError: (1064, "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.168.33.8 TO 'sampleDatabase'@'localhost'' at line 1")

我可以确认在没有 Ansible 的情况下在 mysql 控制台中手动执行相同的相等功能。

【问题讨论】:

  • 这可能无济于事,但请尝试双引号“prov”的有效负载。

标签: mysql remote-access ansible


【解决方案1】:

我在这个模块上遇到了类似的问题,我使用的完整命令是

- name: Create mysql user
  mysql_user: 
    login_password={{ root_mysql_password }}
    name={{ mysql_user }} 
    password={{ mysql_password }} 
    priv={{ mysql_db }}.*:ALL
    host={{ remote_host_ip }}

我也在我的 vars 文件中使用过

remote_host_ip: %

但这可能是一个安全漏洞

【讨论】:

    【解决方案2】:

    我能够通过将host: 条目添加到我只想访问的 IP 来完成类似的结果。

    【讨论】:

    • @user393219 请你提供一个例子
    猜你喜欢
    • 2017-01-15
    • 1970-01-01
    • 2013-06-25
    • 1970-01-01
    • 2012-06-16
    • 1970-01-01
    • 2016-05-30
    • 2020-04-26
    • 1970-01-01
    相关资源
    最近更新 更多