【问题标题】:How to execute mysql queries using salt state如何使用盐状态执行 mysql 查询
【发布时间】:2015-02-11 13:27:36
【问题描述】:

我想执行一个 mysql 查询。我想更改mysql的root密码。我怎样才能使用盐状态来做到这一点?我的 SLS 文件如下所示

test:
 mysql_query.run:
    - order: 2
    - database: '*'
    - query: |
       - "FLUSH PRIVILEGES;"
       - "SET PASSWORD FOR root@'localhost' = PASSWORD('root');"
       - "UPDATE mysql.user SET Password=PASSWORD('root') WHERE User='root';"

我认为状态 mysql_query.run 只执行与数据库相关的查询,因此它需要数据库。因此,当我在 sls 上运行时,我收到“找不到数据库测试消息”,它不会将 root 的密码更改为 root。我该如何解决这个问题?

【问题讨论】:

  • 我需要一个答案

标签: mysql salt-stack


【解决方案1】:

MySQL 存储密码的数据库称为mysql。以下状态为我更新了 root 密码。请注意,我还更新了多行语法。

test:
  mysql_query.run:
    - database: mysql
    - query: |
       FLUSH PRIVILEGES;
       SET PASSWORD FOR root@'localhost' = PASSWORD('root');
       UPDATE mysql.user SET Password=PASSWORD('root') WHERE User='root';

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-08-06
    • 1970-01-01
    • 2018-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-15
    • 2015-03-23
    相关资源
    最近更新 更多