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

Come scrivere ed eseguire uno script di shell per creare un database mysql e una tabella

Aggiorna

Durante la mia prossima sessione, mi sono reso conto che mysql non è stato riconosciuto dal terminale. Mi sono reso conto di essere stupido e di fare sempre le cose sbagliate. Non utilizzare alias per risolvere in un file binario.

Esempio, non utilizzare alias mysql="/Applications/MAMP/Library/bin/mysql"

Invece

export PATH=$PATH:/Applicazioni/MAMP/Library/bin/

Ciò ti consentirà di utilizzare i binari in modo appropriato tramite bash e avrai anche accesso a tutti i binari di mysql incluso mysqladmin ecc. Anche dal terminale. :) Buon scripting!

Esempio di script con variabili di ambiente appropriate:

#!/bin/bash

echo ""
echo Reloading Database 
echo ""
echo Using
echo PROJECT_BUILD_HOME: $PROJECT_BUILD_HOME
echo MYSQL: $(which mysql)
echo PHP: $(which php)
echo ""
echo ""

mysqladmin -u root -pmypass drop projectbuild
mysqladmin -u root -pmypass create projectbuild
gunzip < $PROJECT_BUILD_HOME/pack/projectbuild.sql.gz | mysql -u root -pmypass projectbuild

Vecchia risposta di seguito

Avevo l'installazione di mysql nei miei utenti .profile come alias mysql="/path/to/mysql".

Invece,

Ho usato export mysql=/path/to/mysql

E nel mio script bash, ho usato $mysql.

Esempio

cat /path/to/my/file | $mysql -h localhost -u root -padmin