Docker:授予访问链接的MySQL容器
所以我有一个mysql客户端容器和一个mysql数据库容器,仅用于testing目的。 我已经使用docker运行链接2个容器 – 链接。
现在我想在数据库中创build一个用户并授予它select,创build,更新等权限,以便它可以连接到数据库并执行查询等。
所以,客户端容器上的/ etc / hosts文件现在有一个服务器的入口,这很好,但现在我的问题是:
由于当我重新运行容器时,容器的IP地址可能会发生变化,我如何授予用户从客户端访问服务器的权限,因为客户端将被视为远程?
mysql客户端的例子:
mysql> grant select, update on db.* to 'test'@'???????' identified by 'testpw'
当然,我不能使用'localhost'而不是'???????' 上面,但我也不能硬编码的客户端容器的IP地址,因为这可以改变我下次运行它?
我想我很想理解链接docker工作在这种情况下如何工作:)
您可以使用通配符%
来允许任何远程ip:
GRANT SELECT, UPDATE ON *.* TO 'test'@'%' IDENTIFIED BY 'password';