首頁 >資料庫 >mysql教程 >如何在 Docker 容器中使用預定義架構初始化 MySQL 資料庫?

如何在 Docker 容器中使用預定義架構初始化 MySQL 資料庫?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-12-09 06:39:07259瀏覽

How to Initialize a MySQL Database with a Predefined Schema in a Docker Container?

在Docker 中使用Schema 初始化MySQL 資料庫

問題

問題

>

用戶在初始化時遇到困難使用Dockerfile 具有預先定義架構的MySQL 資料庫。儘管遵循文件指南,旨在運行架構腳本的 CMD 命令還是失敗,導致無法成功建立容器。

    解決方案
  1. 此解決方案涉及順序方法:
  2. 將MySQL 架構轉儲到檔案:
  3. 將MySQL 架構轉儲到檔案:
  4. 匯出資料庫架構使用mysqldump 指令複製到檔案。
  5. 將 Schema 檔案加入 Docker 容器:

在 Dockerfile 中,使用 ADD 指令將 schema.sql 檔案複製到 /docker-入口點-initdb.d 目錄。此目錄允許在資料庫初始化時自動執行腳本。

啟動 Docker MySQL 實例:
FROM mysql:5.7.15

MAINTAINER me

ENV MYSQL_DATABASE=<schema_name> \
    MYSQL_ROOT_PASSWORD=<password>

ADD schema.sql /docker-entrypoint-initdb.d

EXPOSE 3306

使用指定的 MySQL 映像和更新的 Dockerfile 啟動 Docker 容器。

    範例Dockerfile:
附加說明:附加說明:請問腳本將自動執行所有帶有「.sql」的檔案/docker-entrypoint-initdb.d 目錄中的擴充。 此方法允許初始化MySQL 資料庫在容器建立時帶有架構,無需手動幹預。

以上是如何在 Docker 容器中使用預定義架構初始化 MySQL 資料庫?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn