Mac 使用Docker部署Mysql镜像,并使用DBever客户端连接

使用docker拉取镜像

复制代码
docker pull mysql:8.0

docker 部署

bash 复制代码
docker run -d --name mysql8 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456789 -v ${HOME}/docker/mysql/data:/var/lib/mysql -v ${HOME}/docker/mysql/config:/etc/mysql/conf.d --restart unless-stopped mysql:8.0

参数详解

  1. -d

    • 作用:以"分离模式"(后台运行)启动容器。
    • 示例:容器启动后,终端不会阻塞。
  2. --name mysql8

    • 作用 :为容器指定名称 mysql8(便于后续管理)。
    • 注意:名称必须唯一,重复使用会报错。
  3. -p 3306:3306

    • 作用 :将宿主机的 3306 端口映射到容器的 3306 端口。
    • 格式主机端口:容器端口
    • 用途 :允许外部通过宿主机的 3306 端口访问 MySQL 服务。
  4. -e MYSQL_ROOT_PASSWORD=123456789

    • 作用 :设置 MySQL 的 root 用户密码为 123456789
    • 关键性:此环境变量是必需的,否则容器启动会失败。
  5. -v ${HOME}/docker/mysql/data:/var/lib/mysql

    • 作用 :将宿主机目录 ${HOME}/docker/mysql/data 挂载到容器的 /var/lib/mysql
    • 用途:持久化 MySQL 数据文件(避免容器删除后数据丢失)。
    • 路径说明
      • ${HOME}/docker/mysql/data:宿主机目录(需提前创建)。
      • /var/lib/mysql:容器内 MySQL 默认数据存储路径。
  6. -v ${HOME}/docker/mysql/config:/etc/mysql/conf.d

    • 作用 :挂载自定义配置文件目录到容器的 /etc/mysql/conf.d
    • 用途:覆盖 MySQL 默认配置(如字符集、缓冲区大小等)。
    • 示例 :在宿主机 ${HOME}/docker/mysql/config 下放置 my.cnf 文件。
  7. --restart unless-stopped

    • 作用 :设置容器自动重启策略。
      • unless-stopped:除非手动停止,否则总是重启(如宿主机重启后自动恢复容器)。
    • 其他选项
      • no(默认):不自动重启。
      • always:无条件重启(包括手动停止后)。
  8. mysql:8.0

    • 作用:指定使用的镜像为官方 MySQL 8.0 版本。
    • 注意 :若本地不存在该镜像,Docker 会先拉取(docker pull mysql:8.0)。

本地连接mysql镜像

使用brew安装本地mysql客户端

bash 复制代码
brew install mysql-client
echo 'export PATH="/opt/homebrew/opt/mysql-client/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc

连接mysql

css 复制代码
mysql -h 127.0.0.1 -P 3306 -u root -p

DBever连接镜像

测试连接报错:Public Key Retrieval is not allowed

先点 finish,完成连接

右键该连接,点击 Edit Connection

将"allowPublicKeyRetrieval" 设置为 true,将"useSSL"设置为 false

相关推荐
boooooooom1 小时前
尝尝咸淡:从朴素 RAG 到 Graph RAG——一个烹饪问答系统的三层检索升级之路
前端·后端·llm
2601_963870182 小时前
【计算机毕业设计】基于Vue+Spring Boot的助农电商系统的设计与实现
spring boot·后端·课程设计
sun༒2 小时前
Spring @Scheduled 定时任务详解:Cron表达式、执行顺序、优先级与并行调度
java·后端·spring
yuhaiqiang2 小时前
从这两件事就能看出 vibecoding 距离专业作品差距有多大?AI 能抹平技术,但抹不平品味 !
前端·后端·程序员
野生技术架构师3 小时前
Spring Boot 实现数据脱敏:自定义注解 + Jackson 序列化器
java·spring boot·后端
明月_清风4 小时前
vLLM 深度实战:2026 年生产级 LLM 推理引擎完全指南
前端·后端·ai编程
吃饱了得干活4 小时前
限界上下文之后:微服务怎么拆、上下文怎么聊?
java·后端·架构
星火10245 小时前
【Groovy翻译-进阶篇】运行时元编程与编译时元编程(上)
后端·groovy
CHHH_HHH5 小时前
【Linux系统篇】深入解析Linux文件系统:从磁盘寻址到软硬链接
linux·服务器·开发语言·后端·ubuntu