Perbarui
Selama sesi berikutnya, saya menyadari mysql tidak dikenali oleh terminal. Saya menyadari bahwa saya bodoh dan selalu melakukan hal-hal yang salah. Jangan gunakan alias untuk menyelesaikan ke biner.
Contoh, jangan gunakan alias mysql="/Applications/MAMP/Library/bin/mysql"
Sebaliknya
ekspor PATH=$PATH:/Applications/MAMP/Library/bin/
Ini akan memungkinkan Anda untuk menggunakan binari dengan tepat melalui bash, dan Anda juga akan mendapatkan akses ke semua binari mysql termasuk mysqladmin dll dari terminal juga. :) Selamat membuat skrip!
Contoh skrip dengan variabel lingkungan yang sesuai:
#!/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
Jawaban lama di bawah
Saya memiliki pengaturan mysql di .profile pengguna saya sebagai alias mysql="/path/to/mysql".
Sebagai gantinya,
Saya menggunakan export mysql=/path/to/mysql
Dan dalam skrip bash saya, saya menggunakan $mysql.
Contoh
cat /path/to/my/file | $mysql -h localhost -u root -padmin