MySQL को बैच मोड में चलाया जा सकता है। ऐसा करने के लिए, निष्पादित किए जाने वाले स्टेटमेंट को एक फाइल में रखा जाना चाहिए और फिर 'mysql' को इस फाइल से इनपुट पढ़ने के लिए संकेत दिया जाना चाहिए। यह नीचे दिखाए अनुसार किया जा सकता है:
shell> mysql < batch-file
यदि mysql Windows पर चल रहा है, और फाइल पर कुछ विशेष कैरेक्टर हैं जो संभावित रूप से समस्याएं पैदा कर सकते हैं, तो नीचे दी गई कोड लाइन चलाई जा सकती है:
C:\> mysql -e "source batch-file"
यदि कनेक्शन पैरामीटर कमांड लाइन पर निर्दिष्ट करने की आवश्यकता है, तो नीचे दी गई कोड लाइन निष्पादित करने की आवश्यकता है:
shell> mysql -h host -u user -p < batch-file Enter password: ********
जब mysql को इस तरह चलाया जाता है, तो एक स्क्रिप्ट फाइल बनाई जाती है, और इसे आगे निष्पादित किया जाता है। यह समझना महत्वपूर्ण है कि स्क्रिप्ट का उपयोग क्यों किया जाना चाहिए:
यदि किसी क्वेरी को बार-बार चलाने की आवश्यकता है, तो स्क्रिप्ट बनाने से हर बार कोड रीटाइप करने से बचा जा सकता है।
नोट: यदि स्क्रिप्ट को जारी रखने की आवश्यकता है भले ही कुछ स्टेटमेंट त्रुटियां पैदा कर रहे हों, तो '--force' कमांड लाइन विकल्प का उपयोग करना होगा।
मौजूदा क्वेरीज से नई क्वेरीज उत्पन्न की जा सकती हैं जो स्क्रिप्ट फाइलों को केवल कॉपी और एडिट करके एक दूसरे के समान हैं।
बैच मोड क्वेरी विकसित करते समय काफी उपयोगी हो सकता है, और यह तब भी अच्छा काम करता है जब यह एक मल्टी-लाइन स्टेटमेंट या मल्टी-स्टेटमेंट सीक्वेंस हो। यदि कोई गलती होती है, तो सभी कोड को रीटाइप करने की आवश्यकता नहीं होती। त्रुटि को ठीक करने के लिए स्क्रिप्ट को बस एडिट किया जा सकता है, और 'mysql' को स्क्रिप्ट फाइल को फिर से निष्पादित करने का आदेश दिया जा सकता है।
यदि कोई क्वेरी बड़ा आउटपुट उत्पन्न करती है, तो आउटपुट को स्क्रीन के ऊपर से स्क्रॉल ऑफ होने देने के बजाय पेजर के माध्यम से चलाया जा सकता है। यह नीचे दिए गए कमांड का उपयोग करके किया जा सकता है:
shell> mysql < batch-file | more
आउटपुट को एक स्थान पर संग्रहीत किया जा सकता है और आगे संसाधित किया जा सकता है:
shell> mysql < batch-file > mysql.out
स्क्रिप्ट को दूसरों के साथ साझा/वितरित भी किया जा सकता है ताकि वे स्टेटमेंट निष्पादित कर सकें।