Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Berjaya Memulakan Skema Pangkalan Data MySQL dalam Bekas Docker?

Bagaimana untuk Berjaya Memulakan Skema Pangkalan Data MySQL dalam Bekas Docker?

Susan Sarandon
Lepaskan: 2024-12-04 06:41:10
asal
1018 orang telah melayarinya

How to Successfully Initialize a MySQL Database Schema within a Docker Container?

Cara Memulakan Pangkalan Data MySQL dengan Skema dalam Bekas Docker

Memulakan pangkalan data dengan skema boleh menjadi proses yang rumit, terutamanya apabila menggunakan bekas Docker. Artikel ini menangani isu biasa yang dihadapi semasa memulakan pangkalan data MySQL dengan skema menggunakan bekas Docker dan menyediakan penyelesaian berdasarkan lambakan skema ke fail dan menambahkannya pada direktori /docker-entrypoint-initdb.d.

Penerangan Masalah

Apabila cuba mencipta bekas Docker dengan pangkalan data MySQL dan memulakannya dengan skema menggunakan yang berikut Fail Docker:

FROM mysql
MAINTAINER (me) <email>

# Copy the database schema to the /data directory
COPY files/epcis_schema.sql /data/epcis_schema.sql

# Change the working directory
WORKDIR data

CMD mysql -u $MYSQL_USER -p $MYSQL_PASSWORD $MYSQL_DATABASE < epcis_schema.sql
Salin selepas log masuk

Bekas gagal dimulakan dan arahan CMD tidak berjaya dilaksanakan.

Penyelesaian

Untuk memulakan pangkalan data dengan skema, ikut langkah ini :

  1. Buang skema MySQL ke fail menggunakan:
mysqldump -h <your_mysql_host> -u <user_name> -p --no-data <schema_name> > schema.sql
Salin selepas log masuk
  1. Tambahkan fail skema pada direktori /docker-entrypoint-initdb.d dalam Dockerfile:
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
Salin selepas log masuk
  1. Mulakan contoh MySQL Docker menggunakan:
docker-compose build
docker-compose up
Salin selepas log masuk

Dengan menggunakan direktori /docker-entrypoint-initdb.d, fail SQL akan dilaksanakan secara automatik terhadap pangkalan data MySQL semasa pengamulaan kontena, memastikan pangkalan data dimulakan dengan skema yang dikehendaki.

Atas ialah kandungan terperinci Bagaimana untuk Berjaya Memulakan Skema Pangkalan Data MySQL dalam Bekas Docker?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan