अपडेट करें
अपने अगले सत्र के दौरान, मुझे एहसास हुआ कि MySQL को टर्मिनल द्वारा मान्यता नहीं मिली थी। मुझे एहसास हुआ कि मैं गूंगा हूं और हमेशा गलत काम कर रहा था। किसी बाइनरी को हल करने के लिए उपनाम का उपयोग न करें।
उदाहरण, उपनाम mysql="/Applications/MAMP/Library/bin/mysql"
का उपयोग न करेंइसके बजाय
निर्यात पथ =$ पथ:/अनुप्रयोग/एमएएमपी/लाइब्रेरी/बिन/
यह आपको बैश के माध्यम से बायनेरिज़ का उचित उपयोग करने की अनुमति देगा, और आप टर्मिनल से mysqladmin आदि सहित सभी mysql बायनेरिज़ तक भी पहुँच प्राप्त करेंगे। :) हैप्पी स्क्रिप्टिंग!
उपयुक्त पर्यावरण चर के साथ उदाहरण स्क्रिप्ट:
#!/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
नीचे पुराना उत्तर
मेरे पास मेरे उपयोगकर्ताओं में mysql सेटअप था। उर्फ mysql="/path/to/mysql" के रूप में प्रोफ़ाइल।
इसके बजाय,
मैंने एक्सपोर्ट mysql=/path/to/mysql
. का इस्तेमाल कियाऔर मेरी बैश स्क्रिप्ट में, मैंने $mysql का इस्तेमाल किया।
उदाहरण
cat /path/to/my/file | $mysql -h localhost -u root -padmin