Docker MySQL无法被宿主机访问的问题解决

本文主要介绍了DockerMySQL无法被宿主机访问的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

1 问题描述

Docker启动MySQL容器后,创建一个localhost访问的用户:

create user test@localhost identified by 'test';

但是在宿主机中无法通过该用户登录:

mycli -u test

2 原因

Docker中的MySQL创建localhost的用户只能在Docker内部访问,而不能通过外部访问。

至于为什么能在宿主机访问root,是因为默认存在两个root,分别是:

  • root@localhost
  • root@%

test只有一个localhost

3 解决方案

创建test@%或者创建test@172.17.0.1即可:

create user test@% identified by 'test';
create user test@172.17.0.1 identified by 'test';

到此这篇关于Docker MySQL无法被宿主机访问的问题解决的文章就介绍到这了,更多相关Docker MySQL无法被宿主机访问内容请搜索得得之家以前的文章希望大家以后多多支持得得之家!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐