Bijwerken
Tijdens mijn volgende sessie realiseerde ik me dat mysql niet werd herkend door terminal. Ik realiseerde me dat ik dom ben en gewoon altijd dingen verkeerd deed. Gebruik geen alias om naar een binair bestand op te lossen.
Gebruik bijvoorbeeld geen alias mysql="/Applications/MAMP/Library/bin/mysql"
In plaats daarvan
export PATH=$PATH:/Applicaties/MAMP/Bibliotheek/bin/
Hierdoor kun je de binaire bestanden op de juiste manier gebruiken via bash, en je krijgt ook toegang tot alle mysql-binaire bestanden, inclusief mysqladmin enz. vanaf de terminal. :) Veel plezier met scripten!
Voorbeeldscript met geschikte omgevingsvariabelen:
#!/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
Oud antwoord hieronder
Ik had mysql ingesteld in mijn gebruikersprofiel als alias mysql="/path/to/mysql".
In plaats daarvan,
Ik gebruikte export mysql=/path/to/mysql
En in mijn bash-script gebruikte ik $mysql.
Voorbeeld
cat /path/to/my/file | $mysql -h localhost -u root -padmin