我通过Ansible创建了一个MySQL用户:
- name: MySQL user has ALL THE PRIVILEGES (in order to connect remotely)
mysql_user: name="{{ database_user }}" password="{{ database_password }}" priv="*.*:ALL,GRANT" host="%" state=present
notify: restart MySQL
- name: restart MySQL
service: name=mysql state=restarted
用户已创建,我可以从localhost
进行连接,但不能从任何其他计算机进行连接。
有趣的是,跑步:
mysql> GRANT ALL PRIVILEGES ON *.* TO '{{ username }}'@'%' WITH GRANT OPTION;
因为root
MySQL用户允许来自任何其他计算机的那些连接。
我已经通过在Mac OS 10.11上运行的brew
安装了Ansible 1.9.4的几个Ubuntu 14.04主机上重现了这一点。
如何正确指定mysql_user
以启用来自任何主机的连接?
答案 0 :(得分:0)
您可以通过查看mysql.user
表来检查主机上创建的内容 - 用户名,密码或主机可能有问题。
添加用户后无需重启MySQL守护进程。