无法从 MySQL Workbench (Windows 10) 连接到 mysql 容器

Can't connect to mysql container from MySQL Workbench (Windows 10)

这是我的 2 个 docker 图片 运行ning.

$ docker ps

CONTAINER ID        IMAGE                             COMMAND                  CREATED             STATUS                    PORTS                               NAMES
bb51b0b63b7d        mysql/mysql-server                "/entrypoint.sh mysq…"   23 minutes ago      Up 23 minutes (healthy)   0.0.0.0:3306->3306/tcp, 33060/tcp   mami_mysql
d7593fe55546        zarraozaga/dockerize-php-sample   "/usr/sbin/apache2ct…"   About an hour ago   Up About an hour          0.0.0.0:80->80/tcp                  apache_server

主机名:192.168.99.100 端口:3306

用户名和密码输入正确。

这是我执行的运行命令

$ docker run --name mami_mysql -e MYSQL_ROOT_PASSWORD=abc123 -e MYSQL_DATABASE=mami -p 3306:3306 -d mysql/mysql-server

我正在使用 windows 10 家庭版,目前 运行正在使用 docker 工具箱虚拟机。

docker-机器ip 192.168.99.100

错误:

The error im receiving is Failed to connect to mysql at 192.168.88.199:3306 with user root. Host '192.168.99.1' is not allowed to connnect to mysql server. Username and password are all inputed correctly. Connection used, Standard TCP/IP

我设法解决了这个问题。

我不得不用这个命令重新运行它。

$ docker run -p 3306:3306 -e MYSQL_ALLOW_EMPTY_PASSWORD=yes -d mysql/mysql-server --default-authentication-plugin=mysql_native_password

这样做之后我必须创建一个新用户

docker exec -ti a0498b91b646 mysql -uroot -p

sql> CREATE USER 'monty'@'%' IDENTIFIED BY 'secret';

然后登录mysql 用户名:monty 密码:秘密