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

相关推荐
paishishaba8 小时前
JAVA面试复习笔记(待完善)
java·笔记·后端·面试
Victor3569 小时前
Redis(72)Redis分布式锁的常见使用场景有哪些?
后端
Victor3569 小时前
Redis(73)如何处理Redis分布式锁的死锁问题?
后端
程序员爱钓鱼11 小时前
Python编程实战 · 基础入门篇 | Python的缩进与代码块
后端·python
earthzhang202114 小时前
第3讲:Go垃圾回收机制与性能优化
开发语言·jvm·数据结构·后端·性能优化·golang
thinktik16 小时前
AWS EKS 集成Load Balancer Controller 对外暴露互联网可访问API [AWS 中国宁夏区]
后端·kubernetes·aws
追逐时光者17 小时前
将 EasySQLite 解决方案文件格式从 .sln 升级为更简洁的 .slnx
后端·.net
驰羽17 小时前
[GO]GORM 常用 Tag 速查手册
开发语言·后端·golang
AntBlack18 小时前
虽迟但到 :盘一盘 SpringAI 现在发展得怎么样了?
后端·spring·openai
ss27318 小时前
手写Spring第4弹: Spring框架进化论:15年技术变迁:从XML配置到响应式编程的演进之路
xml·java·开发语言·后端·spring