I am attempting to use Ansible to create a MySQL backup user. It should be able to read and lock tables for everything. The step in the playbook is this.
- name: create user - GRANT SELECT, PROCESS, LOCK TABLES ON *.* TO `backup`@`localhost`
community.mysql.mysql_user:
user: backup
host: localhost
login_password: <redacted>
priv: '*.*:SELECT, PROCESS, LOCK TABLES'
I can see nothing wrong with the priv line. Can someone spot it?
I've found the format of the mysql privileges to be extremely picky.
Aside from having to get the syntax correct, also look out for it
seeing privileges in a different order, so applying them again at
every run.
I found that whole-table privileges required no space between, while
column-based privs need spaces between. Example: