MySQL容器中docker-entrypoint-initdb.d目录详解

打印 上一主题 下一主题

主题 1007|帖子 1007|积分 3025

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
docker-entrypoint-initdb.d 是一个特殊的目录,专用于 Docker 中的 MySQL 容器。当利用 Docker 运行 MySQL 容器时,假如这个目录存在并且包含 SQL 脚本或其它可执行文件,Docker 会在 MySQL 服务启动之初自动执行这些脚本。这一机制使得在初次启动容器时可以或许方便地进行一些初始化设置,好比创建数据库、表、用户,以及导入数据等。
具体来说,docker-entrypoint-initdb.d 目录下的文件执行有以下特点:


  • 执行顺序通常是按文件名排序。
  • 支持 .sh 脚本(可执行权限)和 SQL 脚本(.sql)。
  • 这些脚本只在容器的 MySQL 数据卷为空时运行,即初次启动时。假如数据卷已有数据(比方容器重启),这些初始化脚本不会再次执行,以防止数据被重复初始化覆盖。
利用这个机制,开辟者可以通过 Dockerfile 或者在运行容器时通过 -v 选项挂载包含初始化脚本的本地目录到 docker-entrypoint-initdb.d,从而实现 MySQL 容器的自动化设置和数据初始化。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

刘俊凯

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表