Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie man ein Shell-Skript schreibt und ausführt, um eine MySQL-Datenbank und eine Tabelle zu erstellen

Aktualisieren

Während meiner nächsten Sitzung stellte ich fest, dass mysql vom Terminal nicht erkannt wurde. Mir wurde klar, dass ich dumm bin und einfach immer alles falsch mache. Verwenden Sie keinen Alias, um in eine Binärdatei aufzulösen.

Verwenden Sie beispielsweise nicht den Alias ​​mysql="/Applications/MAMP/Library/bin/mysql"

Stattdessen

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

Auf diese Weise können Sie die Binärdateien ordnungsgemäß über Bash verwenden, und Sie erhalten auch vom Terminal aus Zugriff auf alle MySQL-Binärdateien, einschließlich mysqladmin usw. :) Viel Spaß beim Scripten!

Beispielskript mit entsprechenden Umgebungsvariablen:

#!/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

Alte Antwort unten

Ich hatte mysql in meinem Benutzerprofil als Alias ​​mysql="/path/to/mysql".

eingerichtet

Stattdessen

Ich habe export mysql=/path/to/mysql

verwendet

Und in meinem Bash-Skript habe ich $mysql.

verwendet

Beispiel

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