sql >> Databáze >  >> RDS >> Mysql

Jak mohu inicializovat databázi MySQL se schématem v kontejneru Docker?

Měl jsem stejný problém, kdy jsem chtěl inicializovat schéma instance MySQL Docker, ale po nějakém googlování a následování příkladů ostatních jsem narazil na potíže s jeho zprovozněním. Zde je návod, jak jsem to vyřešil.

1) Uložte si schéma MySQL do souboru.

mysqldump -h <your_mysql_host> -u <user_name> -p --no-data <schema_name> > schema.sql

2) Pomocí příkazu ADD přidejte svůj soubor schématu do /docker-entrypoint-initdb.d adresář v kontejneru Docker. Soubor docker-entrypoint.sh soubor spustí všechny soubory v tomto adresáři končící na ".sql" proti databázi MySQL.

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

3) Spusťte instanci Docker MySQL.

docker-compose build
docker-compose up

Díky nastavení MySQL a importu výpisu Dockerfile za to, že jste mi napověděli docker-entrypoint.sh a skutečnost, že spouští skripty SQL i shell!



  1. Návrh databáze pro náborový systém

  2. SQLite vyberte řádky, pokud časové razítko odpovídá dnešnímu datu

  3. Jak najít položku seznamu na zadané pozici v MySQL

  4. Salesforce SOQL z Microsoft Office