1、拉取最新的mysql: docker pull mysql:latest
2、配置端口映射以及密码启动docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
3、进入docker中mysql控制台: docker exec -it mysql-test /bin/bash
说明:mysql-test(运行mysql容器的name,可以通过docker ps 命令查看)
4、mysql -u root -p 输入密码后,进入mysql命令窗口
5、依次输入以下命令:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #修改加密规则 ,这条可以不执行
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; #更新使用本地主机连接的root用户的密码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';#更新使用远程主机连接的root用户的密码
FLUSH PRIVILEGES; #刷新权限
说明:%允许来自任何ip的连接 localhost允许本机的连接
6、select host,user,plugin,authentication_string from mysql.user;

7、退出mysql使用:exit;文章来源:https://www.toymoban.com/news/detail-486298.html
8、验证成功以及原理:mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password,而我使用的Navicat 版本使用mysql_native_password验证插件,两个插件不兼容导致了登录异常。当然还有另外一种办法就是下载最新的Navicat 。文章来源地址https://www.toymoban.com/news/detail-486298.html
到了这里,关于docker安装mysql 并使用navicat连接的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!