docker desktop部署mysql8.0以上版本,并用dbServer连接

首先搜索docker商店,并下载容器。 等下下载好了,直接运行,填入必须的参数,比如

javascript 复制代码
docker run --name mysql -v  /root/mysql/conf:/etc/mysql  -v /root/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -d -p 3307:3307 mysql:5.7  --defaults-file=/etc/mysql/my.cnf

其中,--name 指定容器名称,-v /path/to/mysql:/etc/mysql/conf.d 将主机的 mysql 目录挂载到容器内的 /etc/mysql/conf.d 目录,-v /path/to/mysql/data:/var/lib/mysql 将主机的 mysql/data 目录挂载到容器内的 /var/lib/mysql 目录,-e MYSQL_ROOT_PASSWORD=<password> 指定 MySQL 的 root 用户的密码,-d 表示以后台模式启动容器,-p 3306:3306 将容器的 3306 端口映射到主机的 3306 端口。

因为我是用桌面端,所以配置如下图:

修改 MySQL 配置文件

在主机的 mysql 目录中创建一个名为 my.cnf 的文件,用于修改 MySQL 的配置。例如,以下是一个简单的配置文件示例:


ini 复制代码
[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci

在这个示例中,我们指定了 MySQL 的字符集和排序规则。

重启 MySQL 容器

在主机的 mysql 目录中修改 my.cnf 文件后,需要重启 MySQL 容器使配置生效。使用以下命令重启容器:


复制代码
docker restart mysql

设置账号

先进入docker容器内


bash 复制代码
docker exec -it mysql /bin/bash

再通过命令进入MySQL:


css 复制代码
mysql -uroot -p

2.7、新建MySQL用户,配置远程访问

创建一个admin_rw账户:


shell 复制代码
# 创建用户
mysql> create user 'admin_rw'@'%' identified by '123456';
# 赋予所有权限
mysql> grant all privileges on *.* to 'admin_rw'@'%';
# 刷新权限
mysql> flush privileges;

mysql高版本连接的坑

1、第一次用navt 12连接,发现旧版客户端不支持新的密码认证,要15版本才能支持mysql8+,放弃。 2、改用dbServer,修改驱动属性 --> allowPublicKeyRetrieval ---> true,成功进入

相关推荐
无限大68 小时前
《AI观,观AI》:善用AI赋能|让AI成为你深耕核心、推进重心的“最强助手”
前端·后端
uzong8 小时前
CoPaw是什么?-- 2026年开源的国产个人AI助手
人工智能·后端
无心水8 小时前
【任务调度:框架】11、分布式任务调度进阶:高可用、幂等性、性能优化三板斧
人工智能·分布式·后端·性能优化·架构·2025博客之星·分布式调度框架
pjw198809038 小时前
Spring Framework 中文官方文档
java·后端·spring
盒马盒马8 小时前
Rust:迭代器
开发语言·后端·rust
( •̀∀•́ )9209 小时前
Spring Boot 启动报错 `BindException: Permission denied`
java·spring boot·后端
渔阳节度使10 小时前
SpringAI实时监控+观测性
后端·python·flask
Victor35611 小时前
MongoDB(42)如何使用$project阶段?
后端
Victor35611 小时前
MongoDB(43)什么是嵌入式文档?
后端
Darkdreams11 小时前
SpringBoot项目集成ONLYOFFICE
java·spring boot·后端