使用SaltStack创建具有密码的MySql授权
要为数据库创建授权,我使用以下salt模块使用SaltStack创建具有密码的MySql授权,mysql,salt-stack,Mysql,Salt Stack,要为数据库创建授权,我使用以下salt模块 keystone_grants: mysql_grants.present: - database: keystone.* - grant: ALL PRIVILEGES - user: keystone - host: localhost 但这让我觉得 ID: Keystone_database Function: mysql_grants.present Result: True Comment: Grant ALL PR
keystone_grants:
mysql_grants.present:
- database: keystone.*
- grant: ALL PRIVILEGES
- user: keystone
- host: localhost
但这让我觉得
ID: Keystone_database
Function: mysql_grants.present
Result: True
Comment: Grant ALL PRIVILEGES on keystone.* to keystone@localhost has been added
Started: 19:42:18.428882
Duration: 4.089 ms
Changes:
i、 它给了我这笔赠款
将keystone.*上的所有权限授予keystone@localhost
但我需要创建这个补助金
将keystone.*上的所有权限授予“keystone”@“localhost”
由“密码”标识强>
有人能建议我如何使用SaltStack添加带有密码的授权吗
此状态无法为指定主机的权限设置密码。有关更多说明,请参阅salt.states.mysql\u用户
这句话是写在公司的文件里的。他们从那里指向另一个地方。可悲的是,这份文件并没有说明很多关于补助金的问题
此状态无法授予用户权限。有关更多说明,请参阅salt.states.u
也许这两种方法都可以使用:
keystone_grants:
mysql_grants.present:
- host: localhost
- database: keystone.*
- grant: ALL PRIVILEGES
- user: keystone
- host: localhost
keystone:
mysql_user.present:
- host: localhost
- password: somesecret
此外,我建议使用。如果能找到一些解释,说明为什么状态和公式都存在,那就太好了。Niether的文档中提到了另一个,这导致了一些混淆,即哪一个是有意的,以及哪一个是有意取代另一个。好的,公式与状态之间的比较是棘手的,特别是当存在内置状态来管理公式所针对的同一服务时。在编写公式时,您通常会将需要配置的服务抽象为一个支柱配置结构。一个公式可以通过一个接口配置与不同软件相关的多个不同部分。另一方面,州的目标是通过配置一件事来解决一个问题。您可以在公式中重用它们,因为它们只是基于模板的状态组合。将公式视为增强状态。关于mysql,我想说的是,如果您想管理多个用户使用的mysql服务器,并且需要确保有多个数据库具有适当的权限,那么您可能需要使用公式。如果您只是设置了一个需要一个本地mysql数据库和一个用户的服务,那么状态可能就足够了。选择哪一个取决于您的用例和首选项。