sql >> Database teknologi >  >> RDS >> Mysql

Hvordan tilføjer man et startscript til en mysql docker-container?

Du skal oprette bruger via MYSQL_USER , MYSQL_PASSWORD env vars og brug volumen /docker-entrypoint-initdb.d for at kortlægge mappe med dine opstartsscripts (.sh , .sql , .sql.gz )

docker run -p 3306:3306 --name mysql-server \ 
 -v ~/Development/web/myproject/docker/mysql:/var/lib/mysql \
 -v ~/Development/web/myproject/docker/yourstartupscripts:/docker-entrypoint-initdb.d \
 -e MYSQL_ROOT_PASSWORD=root \
 -e MYSQL_USER=youruser \
 -e MYSQL_PASSWORD=youruserpassword \
 -d mysql:latest

Forklaring fra:https://hub.docker.com/_/mysql/

MYSQL_USER, MYSQL_PASSWORD
Disse variabler er valgfrie og bruges sammen til at oprette en ny bruger og indstille denne brugers adgangskode. Denne bruger vil få superbrugertilladelser (se ovenfor) for databasen specificeret af MYSQL_DATABASE variabel. Begge variabler er nødvendige for at en bruger kan oprettes.

Initialisering af en ny forekomst
Når en container startes for første gang, vil en ny database med det angivne navn blive oprettet og initialiseret med de angivne konfigurationsvariabler. Ydermere vil den køre filer med filtypenavne .sh , .sql og .sql.gz der findes i /docker-entrypoint-initdb.d . Filerne vil blive udført i alfabetisk rækkefølge. Du kan nemt udfylde dine mysql-tjenester ved at montering af en SQL-dump i den mappe og giv tilpassede billeder med bidraget data. SQL-filer importeres som standard til databasen angivet af MYSQL_DATABASE variabel.




  1. Der er symboler som  og så videre i databasen, hvad skal man gøre?

  2. Sådan konverterer du rækker til kolonne i Oracle-tabellen

  3. Hvordan gemmer jeg XML-data i en mysql-database? Jeg vil ikke have fremmednøgler som en gal

  4. hvordan man sammenligner dato og tid i php/mysql