当前位置: 首页 > article >正文

docker 部署mysql8

在Docker中部署MySQL 8是一个相对简单的过程。以下是基本的步骤:

  1. 拉取MySQL 8镜像
    使用Docker命令拉取最新的MySQL 8镜像:

    docker pull registry.openanolis.cn/openanolis/mysql:8.0.30-8.6
    
  2. 创建并运行MySQL容器
    创建并运行MySQL容器,你需要设置一些环境变量,如MYSQL_ROOT_PASSWORD(root用户的密码),MYSQL_DATABASE(创建的数据库名),MYSQL_USERMYSQL_PASSWORD(创建的用户和密码)。以下是一个示例命令:

    docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -p 13422:3306 -e MYSQL_DATABASE=mydb -e MYSQL_USER=myuser -e MYSQL_PASSWORD=mypassword -d registry.openanolis.cn/openanolis/mysql:8.0.30-8.6   ```
    其中:
    - `--name some-mysql` 为容器指定一个名称。
    - `-e` 用于设置环境变量。
    - `-d` 表示在后台运行容器。
    
    
  3. 确认MySQL容器状态
    使用以下命令检查容器是否成功启动:

    docker ps
    
  4. 进入MySQL容器
    如果需要进入容器内部,可以使用以下命令:

    docker exec -it some-mysql bash
    
  5. 连接到MySQL数据库
    使用MySQL客户端连接到数据库:

    docker exec -it some-mysql mysql -uroot -p
    

    输入之前设置的MYSQL_ROOT_PASSWORD密码即可登录。

  6. 配置时区(可选):
    如果你需要设置特定的时区,可以在启动容器时通过-e参数设置MYSQL_TIMEZONE环境变量:

    docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -p 13422:3306 -e MYSQL_DATABASE=mydb -e MYSQL_USER=myuser -e MYSQL_PASSWORD=mypassword -e MYSQL_TIMEZONE=Asia/Shanghai -d registry.openanolis.cn/openanolis/mysql:8.0.30-8.6
    
  7. 持久化数据(重要):
    为了确保MySQL数据的持久化,你需要将MySQL的数据目录映射到宿主机的目录。这可以通过-v参数实现:

    docker run --name some-mysql -v /path/on/host:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -p 13422:3306 -e MYSQL_DATABASE=mydb -e MYSQL_USER=myuser -e MYSQL_PASSWORD=mypassword -d registry.openanolis.cn/openanolis/mysql:8.0.30-8.6
    

    其中/path/on/host是宿主机上的一个目录,你需要将其替换为实际的路径。

请注意,这些步骤提供了一个基本的部署方案。在生产环境中,你可能需要考虑更多的配置选项,如网络设置、资源限制、日志配置等。此外,出于安全考虑,不建议在生产环境中直接使用环境变量来设置密码,而是使用更安全的方法,如Docker Secrets或配置文件。


http://www.kler.cn/a/459234.html

相关文章:

  • MySQL如何执行.sql 文件:详细教学指南
  • 今日总结 2024-12-30
  • LeetCode热题100-两数之和【JavaScript讲解】
  • 信息系统常见的系统架构
  • 老鑫网络安全培训课程收费多少钱
  • 知识图谱+大模型:打造全新智慧城市底层架构
  • 数据链路层知识要点
  • VSCode 插件开发实战(十): 环境变量Env设置与管理
  • svn分支相关操作(小乌龟操作版)
  • 添加购物车业务代码
  • 概率论与随机过程--作业2
  • vscode中调用deepseek实现AI辅助编程
  • Mcnemar‘s exact test
  • 【面试系列】深入浅出 Spring Boot
  • 六、链路层,《计算机网络》,谢希仁 《计算机网络(自顶向下方法 第7版,James F.Kurose,Keith W.Ross)》
  • 抽奖系统(1)(Java 实现)
  • WEB开发 - Flask 入门:Jinja2 模板语法进阶 Python
  • Flink CDC 监听 MySQL 数据变化并发送到 Kafka 技术指南
  • cuda-cuDnn
  • 金融租赁系统的创新发展与市场竞争力提升探讨