所以我有一个mysql-client容器和一个mysql-database容器,仅用于测试目的。我使用docker run -link链接了2个容器。
现在我想在数据库中创建一个用户并授予它选择,创建,更新等访问权限,以便它可以连接到数据库并执行查询等。
因此,客户端容器上的/ etc / hosts文件现在有一个服务器条目,这很棒,但我现在的问题是:
由于当我重新运行容器时容器的IP地址可能会发生变化,我如何授予用户从客户端访问服务器的权限,因为客户端将被视为远程?
mysql客户端中的示例:
{{1}}
当然我不能用'localhost'而不是'???????'上面,但我也不能硬编码客户端容器的IP地址,因为下次运行它时会改变吗?
我想我很想知道链接码头工作者在这种情况下如何工作:)
答案 0 :(得分:1)
您可以使用通配符%
来允许任何远程ip:
GRANT SELECT, UPDATE ON *.* TO 'test'@'%' IDENTIFIED BY 'password';