【docker】将已有mysql脚本导入镜像内使用

  1. 准备SQL脚本

    将SQL脚本(如init.sql)放在宿主机目录下,例如:/path/to/sql-scripts/init.sql

  2. 启动MySQL容器并挂载脚本

    使用 -v 参数将SQL脚本挂载到容器的初始化目录:

    docker run --name mysql-container
    -e MYSQL_ROOT_PASSWORD=your_password
    -e MYSQL_DATABASE=your_db
    -p port:3306 \ //将宿主机端口映射到容器内的3306端口
    -v /path/to/sql-scripts:/docker-entrypoint-initdb.d/init.sql
    -d mysql:tag

  • 关键参数

    • -v /path/to/sql-scripts:/docker-entrypoint-initdb.d:将宿主机目录挂载到容器初始化目录(容器启动时会自动执行该目录下所有 .sql.sh 文件)。

    • -e MYSQL_DATABASE=your_db:可选,创建默认数据库。

      复制代码
      docker run --name mysql-db \
        -e MYSQL_ROOT_PASSWORD=123456 \
        -e MYSQL_DATABASE=myapp \
        -p port:3306 \ //将宿主机端口映射到容器内的3306端口
        -v ./sql-scripts:/docker-entrypoint-initdb.d/init.sql \
        -d mysql:8.0
相关推荐
deeper_wind5 分钟前
K8S-资源对象(小白的“升级打怪”成长之路)
容器·kubernetes
岚天start6 分钟前
K8S容器POD内存快照导出分析处理方案
云原生·容器·kubernetes·内存·快照·pod·内存快照
理智的煎蛋4 小时前
MySQL高可用架构:MHA
linux·数据库·mysql·架构·可用性测试
KING BOB!!!7 小时前
Leetcode高频 SQL 50 题(基础版)题目记录
sql·mysql·算法·leetcode
NineData10 小时前
NineData发布 Oracle 到 MySQL 双向实时复制,助力去 O 战略与数据回流
mysql·阿里云·oracle·ninedata·数据库迁移·数据复制·双向复制
周小码11 小时前
Go开发的自行托管代理加速服务:支持Docker与GitHub加速
docker·golang·github
川石课堂软件测试12 小时前
Oracle 数据库使用事务确保数据的安全
数据库·python·功能测试·docker·oracle·单元测试·prometheus
皆过客,揽星河12 小时前
mysql初学者练习题(从基础到进阶,相关数据sql脚本在最后)
数据库·sql·mysql·oracle·mysql基础练习·mysql基础语法·数据库练习题
奋斗的老史12 小时前
25年Docker镜像无法下载的四种对策
docker·容器·eureka
chillxiaohan12 小时前
Docker学习记录
学习·docker·容器