- Fri 17 June 2016
- misc
Ansible's docs are pretty good, but their mysql_user: module documentation is a little short on a good example for changing the mysql root user's password. Naively following a randomly picked example will result in a root user without the GRANT privilege (with ensuing horrible confusion), or possibly not being able to log into root because confusion about the difference between $hostname and localhost.
Here's a config snippet that works:
{% raw %} - mysql_user: name=root password=obviouspw priv=.:ALL,GRANT host={{ item }} state=present with_items: - "{{ ansible_hostname }}" - 127.0.0.1 - ::1 - localhost
{% endraw %}
Or you could decide to not run MySQL, but that's a discussion for a different day.