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,成功进入

相关推荐
熊小猿5 分钟前
Redis 缓存怎么更新?—— 四种模型与一次“迟到的删除”
java·后端·spring
星释5 分钟前
Rust 练习册 :掌握文本处理与词频统计
开发语言·后端·rust
方圆想当图灵10 分钟前
Cursor 无法跨项目读取源码怎么办?MCP Easy Code Reader 帮你解决!
后端·cursor·mcp
JaguarJack22 分钟前
深入理解 Laravel Middleware:完整指南
后端·php·laravel
绝无仅有25 分钟前
某多多大厂面试相关计算机网络知识点总结
后端·面试·架构
风象南26 分钟前
SpringBoot实现隐式参数注入
后端
绝无仅有27 分钟前
调用服务出现网络错误的问题排查与解决
后端·面试·架构
Victor35628 分钟前
Redis(115)Redis的性能优化有哪些方法?
后端
Victor35628 分钟前
Redis(114)Redis的集群模式如何搭建?
后端