SQL सर्वर एजेंट नौकरियों का पीछा करते हुए


9

मेरे पास प्रत्येक कार्य के लिए कई पैकेज हैं जिन्हें मैंने sql सर्वर एजेंट में नौकरी के लिए सेटअप किया है। कभी-कभी मुझे सभी को एक साथ चलाना चाहिए। किसी दिए गए अनुक्रम में उन सभी को चलाने का सबसे अच्छा तरीका क्या है? मैं थोड़ा हैरान हूं कि sql सर्वर एजेंट नौकरियों को शामिल करने में सक्षम नहीं है क्योंकि नौकरी के चरणों को निष्पादित किया जाना है। मैंने कोशिश की


1
2 मैं इस कल रात के बारे में सोच रहा था :)
jcolebrand

1
क्या आपके प्रत्येक आइटम को एक अलग काम करने की आवश्यकता है? वे अलग काम चरणों के साथ और हर काम चरण जोड़ें T-SQL या अन्य तर्क जो निर्धारित करता है कि कदम चलाना चाहिए के लिए और कैसे (एक मास्टर काम में सेटअप हो सकता है जैसे अगर (दशा = सच) काम और कुछ नहीं करते हैं।
johndacostaa

मुझे कुछ मदद देने के लिए हर किसी का धन्यवाद, ऐसा लगता है कि आरोन ने सुझाव दिया कि मुझे जिस चीज़ की ज़रूरत है वह सबसे करीब है। मैं देखूंगा कि क्या मुझे इसे करने के लिए एक उपकरण की अनुमति मिलती है, अन्यथा SQL एजेंट के भीतर मुझे एक राक्षस का काम करना होगा :(।
nojetlag

आप "पैकेज" कहते हैं, क्या आपका मतलब एसएसआईएस पैकेज से है?
SqlSandwiches

जॉन DaCosta के साथ सहमत हुए। शर्तों के साथ चरणों का उपयोग करें।
एलेक्स

जवाबों:


5

वहाँ 3 पार्टी उपकरण हैं जो आपको यह करने की अनुमति देगा, यदि आपके पास सीखने का समय नहीं है या एसएसआईएस का उपयोग करने के लिए मौजूदा विशेषज्ञता है। अस्वीकरण: मैं उन कंपनियों में से एक के लिए काम करता हूं। SQL संतरी देखें - यह SQL सर्वर नौकरियों (SSIS पैकेजों सहित), विंडोज शेड्यूल किए गए कार्य और यहां तक ​​कि Oracle नौकरियों को भी संभालता है। यहाँ SQL सर्वर सुविधाएँ (जंजीर और कतार सहित) हैं:

दुर्भाग्य से मुझे नहीं लगता कि आप कई नौकरियों की श्रृंखला के लिए अपने आप पर SQL एजेंट का उपयोग करने में सक्षम होंगे। मारियान ने सुझाव दिया कि sp_start_job विधि अतुल्यकालिक रूप से नौकरियों को बंद कर देती है; आप अगले आदेश या अगले चरण पर जाने से पहले उनके पूरा होने का इंतजार नहीं कर सकते।


उम्म, मुझे लगता है कि वह हालांकि msdb सिस्टम टेबल्स को क्वेरी कर सकता है, और अन्य नौकरियों (और उनके चरणों) की स्थिति भी है। अगर मैं गलत हूँ, तो मैं माफी माँगता हूँ और आपको यह खुलासा करने के लिए 6 पैक देता हूँ :-)।
मैरियन

आपकी बात समझ में नहीं आती। कैसे msdb तालिकाओं की क्वेरी करने से उन्हें एक साथ जॉब जॉब में मदद मिलेगी? जब तक स्थिति नहीं बदलती तब तक 1 = 1 पर क्लिक करें? क्वेरी सूचनाएँ? यकीन है कि कई तरीके हैं जो आप इसे मैन्युअल रूप से कर सकते हैं, लेकिन यह सिर्फ sp_startbjob को कॉल करने की तुलना में बहुत अधिक जटिल है।
हारून बर्ट्रेंड

8

एसक्यूएल एजेंट को जॉब शेड्यूलर के रूप में "एंटरप्राइज क्लास" नहीं माना जाता है। इसमें बहुत अधिक कार्यक्षमता का अभाव होता है जिसे आप अंत में स्वयं का निर्माण करते हैं। ऐसा एक उदाहरण निर्भरता होगा। परिणामस्वरूप आप इस तर्क को ज्यादातर SSIS पैकेज में डालने के लिए मजबूर हो जाते हैं। जरूरी नहीं कि बुरी चीज हो ... खुद को बनाने और प्रबंधित करने के लिए सिर्फ एक दर्द।

तो, यह मेरा उत्तर है, एसएसआईएस पैकेज का निर्माण करें और वांछित रूप में एसक्यूएल एजेंट नौकरियों को कॉल करने के लिए कुछ टी-एसक्यूएल कमांड का उपयोग करें। सुनिश्चित करें कि आपकी अपनी आवश्यकताएं और परिदृश्य स्पष्ट रूप से परिभाषित हैं। आप एक ही समय में एक ही टेबल पर कई नौकरियां मारना नहीं चाहते, उदाहरण के लिए।

HTH


मूर्खतापूर्ण मुझे इस तरह के एक परिपक्व "एंटरप्राइज संस्करण" उत्पाद में "एंटरप्राइज" अनुसूचक की उम्मीद है :)। मुझे उम्मीद थी कि मैं एक कदम के रूप में बहुत सारी चीजें शामिल कर सकता हूं, मजेदार यह कि सबसे स्पष्ट (दूसरी नौकरी) निष्पादन योग्य वस्तु के रूप में उपलब्ध नहीं है। मैं उन SSIS पैकेजों को चलाने के लिए नौकरियों का उपयोग करता हूं जिनमें बहुत जटिलता है, एक और SSIS पैकेज बनाने के लिए लचीले ढंग से काम करने के लिए मुझे सही दृष्टिकोण नहीं लगता है। खासकर जब से मैं फिर से asynch sp_start_job के साथ समाप्त हो जाएगा।
nojetlag

6

आपको अपनी नौकरी के चरणों में एक टी-एसक्यूएल स्क्रिप्ट का उपयोग करके, सिस्टम संग्रहीत कार्यविधि sp_start_job का उपयोग करके प्रयास करना चाहिए । यह आपको यह बताने की अनुमति देगा कि आपको कितनी नौकरियां चाहिए।


हारून द्वारा उल्लेख के रूप में, यह मुझे दिए गए अनुक्रम को रखने की अनुमति नहीं देगा, क्योंकि वे सभी एक ही समय में लगभग आग लगाएंगे (इस तथ्य के कारण कि वे asynch हैं)। तो यह वास्तव में एक
जंजीर

ठीक है, शायद यह बहुत सीधा नहीं है, लेकिन आप अभी भी msdb सिस्टम तालिकाओं को क्वेरी कर सकते हैं, आप एक विशिष्ट समय की प्रतीक्षा कर सकते हैं .. फिर से क्वेरी करें। या आप एक ट्रैकिंग तालिका बना सकते हैं, जहाँ आप नौकरियों के चरणों की स्थिति रखते हैं और इस पर एक ट्रिगर के आधार पर आप स्वचालित रूप से अगले चरणों को आग लगा सकते हैं। या आप ऐसा टूल खरीद सकते हैं जो ऐसा करता है और कुछ और मूल्य जोड़ता है और फैंसी UI :-) भी दिखाता है। हर एक के लिए विकल्प हैं ..
Marian
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.