周振林 周振林
首页
  • 前端文章

    • HTML
    • CSS
    • Tailwind CSS (opens new window)
    • JavaScript
    • Vue3
    • 其他
  • 学习笔记

    • 《JavaScript教程》
    • 《ES6 教程》
    • 《TypeScript》
    • 《Vue》
    • 《Git》
    • 《小程序笔记》
    • 《JS设计模式总结笔记》
  • 规范
  • Spring
  • 安装教程
  • 其他教程
  • 归真医学
  • 常用药材
  • 学习笔记
  • 经方学习心得
  • 基础
  • 虚拟化
  • Docker
  • OpenStack
  • 心情杂货
关于
收藏
  • 分类
  • 标签
  • 归档

周振林

IT界的小学生
首页
  • 前端文章

    • HTML
    • CSS
    • Tailwind CSS (opens new window)
    • JavaScript
    • Vue3
    • 其他
  • 学习笔记

    • 《JavaScript教程》
    • 《ES6 教程》
    • 《TypeScript》
    • 《Vue》
    • 《Git》
    • 《小程序笔记》
    • 《JS设计模式总结笔记》
  • 规范
  • Spring
  • 安装教程
  • 其他教程
  • 归真医学
  • 常用药材
  • 学习笔记
  • 经方学习心得
  • 基础
  • 虚拟化
  • Docker
  • OpenStack
  • 心情杂货
关于
收藏
  • 分类
  • 标签
  • 归档
  • 基础

  • 虚拟化

  • Docker

    • 容器生态系统
    • 运行第一个容器
    • Docker安装
    • Docker部署MySQL
      • Docker 部署MySQL数据库
        • 拉取 MySQL 8.0 官方镜像
        • 创建数据存储目录(可选但推荐)
        • 运行 MySQL 容器
        • 问题
        • 修改 MySQL 用户认证方式
    • Docker运行JAR
  • OpenStack

  • 心情杂货

  • 更多
  • Docker
周振林
2025-06-10
目录

Docker部署MySQL

# Docker 部署MySQL数据库

# 拉取 MySQL 8.0 官方镜像

docker pull mysql:8.0
1

# 创建数据存储目录(可选但推荐)

mkdir -p /data/mysql/{conf,data,logs}
1

# 运行 MySQL 容器

docker run -d \
  --name mysql-container \
  -p 3306:3306 \
  -e MYSQL_ROOT_PASSWORD=12345678 \
  -v /data/mysql/conf:/etc/mysql/conf.d \
  -v /data/mysql/data:/var/lib/mysql \
  -v /data/mysql/logs:/var/log/mysql \
  --restart=always \
  mysql:8.0 \
  --character-set-server=utf8mb4 \
  --collation-server=utf8mb4_general_ci
1
2
3
4
5
6
7
8
9
10
11

# 问题

问题描述:docker部署后 使用navicat链接数据库 出现authorIcation plugin caching_sha2_password cannot be loaded

这个错误是由于 MySQL 8.0 默认使用 caching_sha2_password 认证插件,而 Navicat 旧版本可能只支持 mysql_native_password 认证方式导致的。

# 修改 MySQL 用户认证方式

  1. 进入 MySQL 容器
docker exec -it mysql8 mysql -uroot -p
1
  1. 修改用户认证方式
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '12345678';

GRANT ALL PRIVILEGES ON your_database.* TO 'root'@'%';

FLUSH PRIVILEGES;
1
2
3
4
5
  1. 验证修改
SELECT user, host, plugin FROM mysql.user WHERE user = 'root';
1
  1. 预期输出

+------+------+-----------------------+ | user | host | plugin | +------+------+-----------------------+ | root | % | mysql_native_password | +------+------+-----------------------+

Last Updated: 2025/06/18, 08:59:15
Docker安装
Docker运行JAR

← Docker安装 Docker运行JAR→

最近更新
01
Docker安装
06-10
02
Docker运行JAR
06-10
03
Thymeleaf教程
06-10
更多文章>
Copyright © 2019-2025 鲁ICP备19032096号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式