这篇文章主要介绍了Docker安装MySQL并使用Navicat连接,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
MySQL简单介绍:
MySQL 是一个开放源码的关系数据库管理系统,开发者为瑞典 MySQL AB 公司。目前 MySQL 被广泛地应用在 Internet 上的大中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了 MySQL 作为网站数据库。
查看可用的MySQL版本:
访问DokcerHub中的MySQL镜像库地址:https://hub.docker.com/_/mysql/tags
可以通过 Sort by 查看其他版本的MySQL,查看最新版本MySQL镜像(mysql:latest):https://hub.docker.com/_/mysql/tags?page=1&name=latest

此外,我们还可以用docker search mysql命令来查看可用版本:

拉取最新版本的MySQL镜像:
docker pull mysql:latest注意:tag是可选的,tag表示标签,多为软件的版本,默认是latest版本(最新版)

验证MySQL镜像是否成功拉取到本地:
使用以下命令来查看mysql镜像是否成功拉取到本地:
docker images
创建并运行一个MySQL容器:
docker run --name=mysql-test -itd -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root123456 -d mysql参数说明:
- --name:指定了容器的名称,方便之后进入容器的命令行。
- -itd:其中,i是交互式操作,t是一个终端,d指的是在后台运行。
- -p:指在本地生成一个随机端口,用来映射mysql的3306端口。
- -e:设置环境变量。
- MYSQL_ROOT_PASSWORD=root123456:指定了MySQL的root密码
- -d mysql:指运行mysql镜像,设置容器在在后台一直运行。

验证MySQL容器是否创建并运行成功:
docker ps
1、进入MySQL容器:
docker exec -it mysql-test /bin/bash
2、进入MySQL:
mysql -uroot -p
Enter password:root123456
MySQL开启远程访问权限:
1、切换数据库
注意:默认应该就是这个,不切换也行,保险起见还是切换一下
use mysql;2、给root用户分配远程访问权限
GRANT ALL PRIVILEGES ON *.* TO root@'%' WITH GRANT OPTION;参数说明:
- GRANT:赋权命令
- ALL PRIVILEGES:当前用户的所有权限
- ON:介词
- *.*:当前用户对所有数据库和表的相应操作权限
- TO:介词
- ‘root’@’%’:权限赋给root用户,所有ip都能连接
- WITH GRANT OPTION:允许级联赋权
3、强制刷新权限
FLUSH PRIVILEGES;
服务器配置3306的开放端口:

Navicat 连接 MySQL8 报错:2059 - Authentication plugin ‘caching_sha2_password’ cannot be loaded:xxxx;

错误问题原因:
这是因为MySQL8之前密码加密规则为mysql_native_password,而 MySQL8 之后的加密规则为caching_sha2_password,也就是说,如果要用Navicat连接MySQL,其实只需要将密码规则改回 mysql_native_password 即可;
解决方法:
1.进入MySQL数据库
docker exec -it mysql-test /bin/bash
mysql -uroot -p
Enter password:root1234562.选择数据库
use mysql;3.更改密码加密方式
IDENTIFIED BY ‘root123456':连接时输入密码,密码为root123456ALTER USER 'root'@'%' IDENTIFIED BY 'root123456' PASSWORD EXPIRE NEVER; 4.更新用户密码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root123456'; 5.刷新权限
FLUSH PRIVILEGES;
Navicat连接MySQL测试:

到此这篇关于Docker安装MySQL并使用Navicat连接的文章就介绍到这了,更多相关Docker安装MySQL使用Navicat连接内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!
本文标题为:Docker安装MySQL并使用Navicat连接的操作方法
基础教程推荐
- Centos7 nginx启动脚本 2023-09-22
- centos 7智熄直接断电导致无法启动 2023-09-23
- Apache Spark源码走读之15 -- Standalone部署模式下的容错性分析 2023-09-28
- win10搭建配置ftp服务器的方法 2022-11-12
- apache+tomcat实现session共享 2023-09-08
- 利用Apache部署静态网站(一) 2023-09-09
- centos7 nginx配置ssl证书实现https访问同时http访问 2023-09-22
- apache 环境下 php 的配置注意事项 2022-09-01
- Apache索引目录浏览的学习笔记 2023-09-28
- Docker镜像与容器的导入导出以及常用命令总结 2022-11-24
