Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

SQL सर्वर प्रतिकृति समस्या निवारण

पिछले लेख में, SQL सर्वर प्रतिकृति की स्थापना और विन्यास, हमने गहराई से चर्चा की, SQL सर्वर प्रतिकृति अवधारणा, इसके घटक, प्रकार और चरण दर चरण SQL ट्रांजेक्शनल प्रतिकृति को कैसे कॉन्फ़िगर करें। इस लेख को पढ़ने से पहले पिछले लेख को पढ़ने और प्रतिकृति अवधारणा और इसके घटकों को समझने की अत्यधिक अनुशंसा की जाती है। इस लेख में, हम देखेंगे कि किसी मौजूदा SQL सर्वर प्रतिकृति साइट का समस्या निवारण कैसे करें।

समस्या निवारण अवलोकन

SQL सर्वर प्रतिकृति का मुख्य लक्ष्य डेटा को प्रकाशक और सब्सक्राइबर में सिंक्रनाइज़ करना है। सुखद परिदृश्य में, यदि कोई लेन-देन प्रकाशन डेटाबेस में किया जाता है और प्रतिबद्ध किया जाता है, तो इसे वितरण डेटाबेस में कॉपी किया जाएगा और फिर उस प्रकाशक से जुड़े सभी सब्सक्राइबरों पर सिंक्रनाइज़ और लागू किया जाएगा। यदि इस प्रक्रिया के किसी भी चरण में कोई समस्या आती है, तो प्रकाशक परिवर्तन सब्सक्राइबर की ओर से उपलब्ध नहीं होंगे। इस मामले में, हमें समाप्त होने वाली SQL प्रतिकृति साइट के साथ समाप्त होने से पहले जितनी जल्दी हो सके उस समस्या का निवारण और ठीक करने की आवश्यकता है जिसे स्क्रैच से फिर से सिंक्रनाइज़ किया जाना चाहिए या इसकी लेनदेन लॉग फ़ाइल वाला डेटाबेस खाली स्थान से बाहर हो जाता है, सभी डेटाबेस लेनदेन को रोक देता है ।

यह पहचानना कि किस चरण पर प्रतिकृति सिंक्रनाइज़ेशन विफल हो रहा है और एक संकेतक त्रुटि संदेश आवंटित करना जो समस्या को ठीक करने की ओर ले जाता है, SQL सर्वर प्रतिकृति समस्या निवारण प्रक्रिया का सबसे चुनौतीपूर्ण हिस्सा है। साथ ही, पिछले सिंक्रनाइज़ेशन समय की जाँच करना और उस समय/बाद में किए गए परिवर्तनों की जाँच करना जो इस विफलता का कारण बन सकते हैं, प्रतिकृति सिंक्रनाइज़ेशन विफलता के निवारण में भी मदद कर सकते हैं।

SQL सर्वर प्रतिकृति एजेंट की भूमिका को समझने से यह पहचानने में मदद मिलेगी कि सिंक्रनाइज़ेशन किस चरण में विफल हो जाता है। याद रखें कि तीन प्रतिकृति एजेंट हैं जो अधिकांश SQL सर्वर प्रतिकृति प्रकारों के बीच सामान्य हैं। स्नैपशॉट एजेंट प्रारंभिक सिंक्रनाइज़ेशन स्नैपशॉट बनाने के लिए ज़िम्मेदार है। लॉग रीडर एजेंट डेटाबेस लेन-देन लॉग फ़ाइल से परिवर्तनों को पढ़ने के लिए ज़िम्मेदार है और इसे वितरण डेटाबेस में कॉपी करें और अंत में, वितरण एजेंट जो सब्सक्राइबरों में परिवर्तनों को सिंक्रनाइज़ करने के लिए ज़िम्मेदार है।

इस लेख में, हम प्रतिकृति मॉनिटर . का लाभ उठाएंगे और नौकरी गतिविधि मॉनिटर विंडोज़ SQL सर्वर प्रतिकृति स्थिति की निगरानी और किसी भी सिंक्रनाइज़ेशन विफलता त्रुटि के बारे में जानकारी प्राप्त करने में।

समस्या निवारण परिदृश्य

SQL सर्वर प्रतिकृति समस्याओं का निवारण कैसे करें, यह समझने का सबसे अच्छा और सीधा तरीका व्यावहारिक परिदृश्य प्रदान करना और यह दिखाना है कि इस विशेष समस्या को कैसे ठीक किया जाए। आइए एक-एक करके परिदृश्यों पर चर्चा शुरू करें।

SQL सर्वर एजेंट सेवा समस्या

SQL सर्वर एजेंट सेवा SQL सर्वर प्रतिकृति सिंक्रनाइज़ेशन प्रक्रिया में एक महत्वपूर्ण भूमिका निभाती है। यह इस तथ्य के कारण है कि प्रत्येक प्रतिकृति एजेंट SQL एजेंट कार्य के अंतर्गत चलेगा।

एक सक्रिय डेटाबेस व्यवस्थापक होने के नाते, आपको दैनिक आधार पर SQL प्रतिकृति साइट स्थिति की जाँच करने की आवश्यकता है। प्रतिकृति साइट की स्थिति की जांच करने के लिए, प्रतिकृति -> स्थानीय प्रकाशन नोड के तहत प्रकाशन पर राइट-क्लिक करें, और प्रतिकृति मॉनिटर लॉन्च करें चुनें। विकल्प, जैसा कि नीचे दिखाया गया है:

प्रतिकृति मॉनिटर विंडो से, आप एक चेतावनी संदेश देख सकते हैं, जिसमें दिखाया गया है कि प्रतिकृति जल्द ही समाप्त हो जाएगी या पहले से ही समाप्त हो जाएगी, बिना किसी सांकेतिक त्रुटि संदेश को देखे, जैसा कि नीचे दिया गया है:

यदि प्रतिकृति मॉनिटर विंडो हमें इस बारे में कोई उपयोगी जानकारी प्रदान नहीं करती है कि प्रतिकृति साइट शीघ्र ही क्यों समाप्त हो रही है, तो अगला चरण नौकरी गतिविधि मॉनिटर की जांच करना है। SQL सर्वर एजेंट नोड के अंतर्गत। SQL सर्वर एजेंट नोड पर जाकर, आप सीधे देखेंगे कि SQL सर्वर एजेंट सेवा नहीं चल रही है (इसके बगल में लाल घेरे से)। यदि SQL सर्वर एजेंट सेवा नहीं चल रही है, तो इसका मतलब है कि उस उदाहरण के तहत बनाए गए सभी कार्य काम नहीं कर रहे हैं, जिसमें प्रतिकृति एजेंट कार्य भी शामिल हैं। परिणामस्वरूप, समग्र प्रतिकृति साइट काम नहीं कर रही है।

उस समस्या को ठीक करने के लिए, हमें सीधे SQL सर्वर प्रबंधन स्टूडियो से या SQL सर्वर कॉन्फ़िगरेशन प्रबंधक (अनुशंसित) का उपयोग करके SQL सर्वर एजेंट सेवा शुरू करने की आवश्यकता है, जैसा कि नीचे दिखाया गया है:

SQL सर्वर एजेंट सेवा शुरू करने के बाद, प्रतिकृति मॉनिटर को फिर से जांचें और सुनिश्चित करें कि सब्सक्राइबर की स्थिति चल रही है और सभी लंबित लेनदेन सफलतापूर्वक सब्सक्राइबर के साथ सिंक्रनाइज़ हो जाते हैं। प्रकाशक से वितरक अनुभाग में रिकॉर्ड कॉपी किए गए हैं या नहीं, इसकी जांच करके आप एक-एक करके इन चरणों की जांच कर सकते हैं:

फिर डिस्ट्रीब्यूटर से सब्सक्राइबर को सफलतापूर्वक सिंक्रोनाइज़ किया गया, जैसा कि नीचे दिया गया है:

और अंत में सुनिश्चित करें कि अंतिम टैब से कोई अविभाजित लेनदेन नहीं है, जैसा कि नीचे दिखाया गया है:

उसके बाद, हमें यह सुनिश्चित करने की आवश्यकता है कि प्रतिकृति एजेंट कार्य बिना किसी समस्या के चल रहे हैं। एसएसएमएस ऑब्जेक्ट एक्सप्लोरर के तहत एसक्यूएल सर्वर एजेंट नोड का विस्तार करके एसक्यूएल एजेंट जॉब्स की जांच की जा सकती है और जॉब एक्टिविटी मॉनिटर देखें, फिर जांचें कि क्या लॉग रीडर एजेंट और डिस्ट्रीब्यूटर एजेंट चल रहे हैं, यह ध्यान में रखते हुए कि स्नैपशॉट एजेंट केवल काम के दौरान काम करेगा। स्नैपशॉट बनाने की प्रक्रिया, जैसा कि नीचे दिखाया गया है:

आप प्रतिकृति एजेंट नौकरियों के इतिहास की समीक्षा भी कर सकते हैं और उस नौकरी पर राइट-क्लिक करके पिछले विफलता कारण की जांच कर सकते हैं और इतिहास देखें चुनें। नीचे के रूप में विकल्प:

जहां आपको एक सांकेतिक त्रुटि संदेश मिल सकता है जो भविष्य में इस समस्या पर काबू पाने में मदद करता है, जैसा कि नीचे दिया गया है:

पिछले मुद्दे को दूर करने के लिए, SQL सर्वर एजेंट सेवा स्टार्टअप मोड को मैन्युअल से स्वचालित में बदला जाना चाहिए, इस तरह आप यह सुनिश्चित करेंगे कि होस्टिंग सर्वर के रिबूट होने पर सेवा स्वचालित रूप से शुरू हो जाएगी।

स्नैपशॉट एजेंट अनुमति समस्या

मान लें कि SQL सर्वर प्रतिकृति स्थिति की जाँच करते समय, प्रतिकृति मॉनिटर का उपयोग करते हुए, आपने देखा कि लाल घेरे के अंदर X चिह्न से प्रतिकृति विफलता है। और प्रतिकृति मॉनिटर से पता चलता है कि विफलता प्रतिकृति एजेंटों में से एक से है, एजेंट टैब के शीर्ष पर लाल घेरे के अंदर X चिह्न से।

उस प्रतिकृति विफलता की पहचान करने के लिए, हमें एजेंट टैब को ब्राउज़ करना चाहिए और जांचना चाहिए कि कौन सा एजेंट विफल हो रहा है। एजेंट पृष्ठ से, आप देखेंगे कि स्नैपशॉट एजेंट विफल हो रहा है। स्नैपशॉट एजेंट पर डबल-क्लिक करें और नीचे दिए गए त्रुटि संदेश की समीक्षा करें:

प्रतिकृति एजेंट ने 10 मिनट में प्रगति संदेश लॉग नहीं किया है। यह एक अनुत्तरदायी एजेंट या उच्च सिस्टम गतिविधि का संकेत दे सकता है। सत्यापित करें कि रिकॉर्ड्स को गंतव्य पर दोहराया जा रहा है और सब्सक्राइबर, प्रकाशक और वितरक के कनेक्शन अभी भी सक्रिय हैं।

दुर्भाग्य से, यह त्रुटि संदेश सामान्य है और यह केवल यह दर्शाता है कि स्नैपशॉट एजेंट बिना कारण बताए काम नहीं कर रहा है:

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

स्नैपशॉट एजेंट क्रेडेंशियल समस्या को ठीक करने के लिए, प्रतिकृति नोड -> स्थानीय प्रकाशन के अंतर्गत प्रकाशन पर राइट-क्लिक करें, और गुण चुनें विकल्प। प्रकाशन गुण विंडो से, एजेंट सुरक्षा ब्राउज़ करें पृष्ठ और उस खाते के लिए क्रेडेंशियल पुनः सम्मिलित करें जिसके अंतर्गत स्नैपशॉट एजेंट चलेगा।

स्नैपशॉट एजेंट खाता क्रेडेंशियल्स को रीफ़्रेश करने के बाद, जॉब एक्टिविटी मॉनिटर विंडो से स्नैपशॉट एजेंट कार्य फिर से शुरू करें, और सुनिश्चित करें कि कार्य ठीक काम कर रहा है, जैसा कि नीचे दिया गया है:

साथ ही, जांचें कि क्या स्नैपशॉट एजेंट अभी ठीक काम कर रहा है, और त्रुटि संदेश अब प्रतिकृति मॉनिटर के तहत प्रकट नहीं होता है, जैसा कि नीचे दिखाया गया है:

स्नैपशॉट फ़ोल्डर अनुमति समस्या

मान लें कि, प्रकाशक और सब्सक्राइबर को प्रारंभिक स्नैपशॉट का उपयोग करके सिंक्रनाइज़ करने का प्रयास करते समय या नए स्नैपशॉट का उपयोग करके स्नैपशॉट प्रतिकृति साइट को पुन:सिंक्रनाइज़ करने का प्रयास करते समय, स्नैपशॉट निर्माण प्रक्रिया नीचे एक्सेस त्रुटि संदेश के साथ विफल रही:

यह त्रुटि संदेश दिखाता है कि जिस खाते के अंतर्गत स्नैपशॉट एजेंट चल रहा है उसे त्रुटि संदेश में निर्दिष्ट स्नैपशॉट फ़ोल्डर तक पहुँचने की अनुमति नहीं है।

उस समस्या को ठीक करने के लिए, हमें प्रकाशन गुण विंडो के एजेंट सुरक्षा पृष्ठ से उस खाते की जांच करनी होगी जिसके अंतर्गत स्नैपशॉट एजेंट चल रहा है, जैसा कि नीचे दिखाया गया है:

फिर त्रुटि संदेश में निर्दिष्ट स्नैपशॉट फ़ोल्डर ब्राउज़ करें और सुनिश्चित करें कि इस स्नैपशॉट खाते में उस फ़ोल्डर पर न्यूनतम पढ़ने-लिखने की अनुमति है, फिर स्नैपशॉट एजेंट को फिर से चलाएं और देखें कि समस्या अब ठीक हो गई है और सिंक्रनाइज़ेशन स्नैपशॉट सफलतापूर्वक बनाया गया है, जैसा कि नीचे:

सदस्य अनुमति समस्या

मान लें कि, SQL सर्वर प्रतिकृति साइट की स्थिति की जाँच करते समय, प्रतिकृति मॉनिटर का उपयोग करते हुए, आप देखते हैं कि सब्सक्राइबर के साथ कोई विफलता है, जैसा कि नीचे दिखाया गया है:

यदि आप एरर आइकन पर क्लिक करते हैं, तो आप देखेंगे कि डिस्ट्रीब्यूटर से सब्सक्राइबर के लिए लेनदेन को सिंक्रनाइज़ करने का प्रयास करते समय विफलता हुई है। और त्रुटि संदेश से, यह स्पष्ट है कि वितरक अनुमति की समस्या के कारण सब्सक्राइबर SQL सर्वर इंस्टेंस से कनेक्ट करने में सक्षम नहीं है, जैसा कि नीचे दिखाया गया है:

उस समस्या को ठीक करने के लिए, हमें सब्सक्राइबर इंस्टेंस से कनेक्ट करने के लिए उपयोग किए गए क्रेडेंशियल्स की जांच और रीफ्रेश करने की आवश्यकता है। क्रेडेंशियल्स की जांच करने के लिए, प्रतिकृति नोड के तहत सदस्यता पर राइट-क्लिक करें -> स्थानीय प्रकाशन -> वर्तमान प्रकाशन नाम और गुण विकल्प चुनें। सदस्य कनेक्शन . से सब्सक्राइबर प्रॉपर्टीज विंडो के अंतर्गत फ़ील्ड में, उस खाते के क्रेडेंशियल्स को रीफ़्रेश करें जिसका उपयोग सब्सक्राइबर इंस्टेंस से कनेक्ट करने के लिए किया जाएगा, जैसा कि नीचे दिखाया गया है:

उसके बाद, प्रतिकृति मॉनिटर से प्रतिकृति स्थिति को फिर से जांचें और आप देखेंगे कि सब्सक्राइबर कनेक्शन समस्या अब उपलब्ध नहीं है, और प्रतिकृति साइट सामान्य रूप से चल रही है, जैसा कि नीचे दिखाया गया है:

सदस्य पहुंच योग्य नहीं है

एक अन्य SQL सर्वर प्रतिकृति विफलता समस्या जिसका आप सब्सक्राइबर की ओर से सामना कर सकते हैं, वह यह है कि डिस्ट्रीब्यूटर सब्सक्राइबर से कनेक्ट करने में सक्षम नहीं है, डिस्ट्रीब्यूटर के तहत सब्सक्राइबर पेज पर दिखा रहा है कि, यह “नेटवर्क” के कारण सब्सक्राइबर के साथ कनेक्शन खोलने में सक्षम नहीं है। संबंधित… ” कनेक्टिविटी त्रुटि, नीचे प्रतिकृति मॉनिटर विंडो में दिखाया गया है:

यह त्रुटि संदेश इंगित कर रहा है कि डिस्ट्रीब्यूटर इंस्टेंस और सब्सक्राइबर इंस्टेंस के बीच एक कनेक्शन समस्या है। इस कनेक्टिविटी समस्या को जांचने का पहला और सीधा तरीका यह सुनिश्चित करना है कि सब्सक्राइबर SQL सर्वर इंस्टेंस ऑनलाइन है। इसे सब्सक्राइबर की तरफ से SQL सर्वर कॉन्फ़िगरेशन मैनेजर से चेक किया जा सकता है। हमारी स्थिति में, हम देख सकते हैं कि सब्सक्राइबर की ओर से SQL सर्वर सेवा बंद हो गई है। उस समस्या को ठीक करने के लिए, SQL सर्वर सेवा प्रारंभ करें और प्रतिकृति मॉनिटर से जांचें कि प्रतिकृति साइट फिर से सिंक्रनाइज़ की गई है, जैसा कि नीचे दिखाया गया है। अधिक उन्नत SQL कनेक्टिविटी समस्या के लिए, समस्या निवारण कनेक्टिविटी MS दस्तावेज़ देखें:

ग्राहक डेटाबेस अनुमति समस्या

मान लें कि आप प्रतिकृति मॉनिटर का उपयोग करके SQL सर्वर प्रतिकृति सिंक्रनाइज़ेशन स्थिति की जांच कर रहे हैं, और यह पाया जाता है कि वितरक से सब्सक्राइबर में परिवर्तनों को दोहराने का प्रयास करते समय प्रतिकृति विफल हो रही है, ग्राहक त्रुटि पर क्लिक करने पर, आप देखेंगे कि डिस्ट्रीब्यूटर सब्सक्राइबर तक पहुंचने और उससे कनेक्ट करने में सक्षम है, लेकिन अनुमति की कमी के कारण सब्सक्रिप्शन डेटाबेस से कनेक्ट करने में सक्षम नहीं है, जैसा कि नीचे दिखाया गया है:

उस समस्या को ठीक करने के लिए, सब्सक्राइबर से कनेक्ट करें और सुनिश्चित करें कि सब्सक्राइबर डेटाबेस से कनेक्ट करने के लिए उपयोग किया जाने वाला खाता db_Owner डेटाबेस निश्चित भूमिका का सदस्य है, जैसा कि नीचे दिखाया गया है:

उसके बाद, प्रतिकृति मॉनिटर को दोबारा जांचें और सुनिश्चित करें कि वितरक सदस्यता डेटाबेस तक पहुंचने में सक्षम है और नीचे दिए गए परिवर्तनों को दोहराने में सक्षम है:

डेटा अंतर समस्या

मान लें कि डेटाबेस डेवलपमेंट टीम में से एक का दावा है कि कुछ बदलाव हैं जो प्रकाशक (SQL1) पर शिफ्ट टेबल पर किए गए हैं, जो सब्सक्राइबर इंस्टेंस (SQL2) पर चलने वाली दैनिक रिपोर्ट में परिलक्षित नहीं होते हैं, और उन्होंने नीचे स्नैपशॉट प्रदान किया है। यह दर्शाता है कि परिवर्तन दोहराए नहीं गए हैं:

प्रतिकृति सिंक्रोनाइज़ेशन समस्या की जाँच में पहला कदम प्रतिकृति मॉनिटर को खोलना है और यह पता लगाना है कि यह किस चरण में विफल हो रहा है। प्रतिकृति मॉनिटर से, आप देख सकते हैं कि लॉग रीडर एजेंट विफल हो रहा है, क्योंकि डिस्ट्रीब्यूटर से सब्सक्राइबर को परिवर्तन दोहराए नहीं गए हैं, लेकिन उस एजेंट से कोई स्पष्ट संदेश नहीं दिया गया है, जैसा कि नीचे दिखाया गया है:

चूंकि हमें प्रतिकृति मॉनिटर से सार्थक त्रुटि संदेश नहीं मिल रहा है, हम जॉब एक्टिविटी मॉनिटर का उपयोग करके लॉग रीडर एजेंट जॉब के इतिहास की जांच करेंगे, जो दर्शाता है कि जिस खाते के तहत लॉग रीडर एजेंट चल रहा है, उसके लिए क्रेडेंशियल गलत है। , जैसा कि नीचे दिखाया गया है:

लॉग रीडर एजेंट क्रेडेंशियल समस्या को ठीक करने के लिए, प्रकाशन गुण विंडो के एजेंट सुरक्षा पृष्ठ को ब्राउज़ करें, और लॉग रीडर एजेंट क्रेडेंशियल्स को एक मान्य के साथ ताज़ा करें, जैसा कि नीचे दिया गया है:

प्रतिकृति मॉनिटर को फिर से जाँचने पर, आप देखेंगे कि परिवर्तन सफलतापूर्वक दोहराए गए हैं और डेटा को नई पाली परिवर्तनों के साथ अद्यतन किया गया है, जैसा कि नीचे दिखाया गया है:

सब्सक्राइबर पर पंक्ति नहीं मिली

आइए इस मुद्दे को दूसरी तरफ से देखें। मान लीजिए, शिफ्ट टेबल में बदलाव किया गया है जैसा कि नीचे दिखाया गया है:

लेकिन यह परिवर्तन सब्सक्राइबर को दोहराया नहीं गया है और संपूर्ण SQL सर्वर प्रतिकृति साइट विफल हो गई है। प्रतिकृति मॉनिटर से, आप देख सकते हैं कि डिस्ट्रीब्यूटर से सब्सक्राइबर में परिवर्तन करने का प्रयास करते समय यह विफल हो रहा है, और इस तथ्य के कारण विफल रहा है कि यह उस विशिष्ट रिकॉर्ड को 3 के बराबर आईडी के साथ अपडेट करने में सक्षम नहीं है, क्योंकि यह रिकॉर्ड सब्सक्राइबर डेटाबेस टेबल पर उपलब्ध नहीं है, जैसा कि नीचे दिखाया गया है:

सब्सक्राइबर साइड (एसक्यूएल2) पर उस रिकॉर्ड की जांच करने पर, आप देखेंगे कि रिकॉर्ड उपलब्ध नहीं है, जैसा कि नीचे दिया गया है:

इस समस्या को दूर करने के लिए, हमें उस रिकॉर्ड को फिर से सब्सक्राइबर डेटाबेस तालिका में सम्मिलित करने की आवश्यकता है और वितरक को प्रतिकृति सिंक्रनाइज़ेशन विफलता समस्या को ठीक करते हुए, इसे फिर से अपडेट करने का प्रयास करने दें, जैसा कि नीचे दिखाया गया है:

SQL सर्वर हमें एक डेटा असंगतता समस्या मिलने पर भी प्रतिकृति साइट को काम करना जारी रखने के लिए एक विकल्प प्रदान करता है, जहाँ आप बाद में इस असंगतता समस्या को मैन्युअल रूप से ठीक कर सकते हैं। ऐसा करने के लिए, प्रतिकृति मॉनिटर से, सब्सक्राइबर पर राइट-क्लिक करें और एजेंट प्रोफ़ाइल चुनें विकल्प, जैसा कि नीचे दिखाया गया है:

प्रदर्शित विंडो से, आप लॉग रीडर एजेंट प्रोफ़ाइल को अपडेट कर सकते हैं और डेटा असंगति समस्या होने की स्थिति में डेटा परिवर्तनों की प्रतिकृति जारी रखने की अनुमति दे सकते हैं, जैसा कि नीचे दिखाया गया है:

अप्रारंभिक सदस्यता समस्या

यदि प्रतिकृति साइट को लंबे समय तक निगरानी के बिना छोड़ दिया जाता है, और तीन दिनों से अधिक के लिए बिना किसी सुधार के विफलता होती है, तो प्रतिकृति साइट समाप्त हो जाएगी और सदस्यता को अप्रारंभीकृत के रूप में चिह्नित किया जाएगा, एक नए स्नैपशॉट का उपयोग करके फिर से शुरू होने की प्रतीक्षा में . नया सब्सक्रिप्शन बिना इनिशियलाइज़ किए बनाते समय उसी परिदृश्य का सामना करना पड़ सकता है, जैसा कि नीचे दिखाया गया है:

उस समस्या को ठीक करने के लिए, हमें प्रतिकृति नोड के तहत सदस्यता पर राइट-क्लिक करके उस सदस्यता को फिर से शुरू करना चाहिए -> स्थानीय प्रकाशन और प्रकाशन का विस्तार करें, फिर पुन:प्रारंभ विकल्प चुनें और इस सदस्यता को आरंभीकरण के लिए चिह्नित करें और इसे एक नया प्राप्त करने के लिए तैयार करें स्नैपशॉट, जैसा कि नीचे दिखाया गया है:

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

इस समस्या को दूर करने के लिए, स्नैपशॉट एजेंट नौकरी खोलें और नौकरी के मालिक को एसए या किसी वैध व्यवस्थापक उपयोगकर्ता में बदलें, और नौकरी सफलतापूर्वक चलेगी, जैसा कि नीचे दिया गया है:

अब आप देखेंगे कि सदस्यता स्थिति रनिंग में बदल गई है, यह देखते हुए कि यह प्रारंभिक स्नैपशॉट के लिए सिंक्रनाइज़ेशन प्रक्रिया शुरू करने की प्रतीक्षा कर रहा है, जैसा कि नीचे दिखाया गया है:

एक नया स्नैपशॉट बनाने के लिए, प्रतिकृति नोड-> स्थानीय प्रकाशन के अंतर्गत प्रकाशन पर राइट-क्लिक करें, और स्नैपशॉट एजेंट स्थिति देखें चुनें। विकल्प।

खुलने वाली विंडो से, स्नैपशॉट बनाने की प्रक्रिया शुरू करने के लिए स्टार्ट बटन पर क्लिक करें। जब स्नैपशॉट जिसमें सभी प्रकाशक लेख सफलतापूर्वक बनाए गए हों, तो प्रतिकृति मॉनिटर को फिर से खोलें और सदस्यता की स्थिति की जाँच करें, जहाँ आप देखेंगे कि स्नैपशॉट सब्सक्राइबर पर लागू होता है और प्रकाशक के साथ सिंक्रनाइज़ होता है, जैसा कि नीचे दिखाया गया है:

प्रकाशक डेटाबेस स्वामी समस्या

यह भी मान लें कि, प्रतिकृति मॉनिटर का उपयोग करते हुए SQL सर्वर प्रतिकृति साइट की स्थिति की जाँच करते समय, प्रतिकृति साइट विफल हो गई थी और लॉग रीडर एजेंट में विफलता का पता चला था। उस एजेंट से लौटाए गए त्रुटि संदेश की जाँच करने पर, यह पाया गया कि प्रकाशन डेटाबेस के वर्तमान स्वामी को निर्धारित करने में समस्या है, जैसा कि नीचे दिखाया गया है:

उस समस्या को ठीक करने के लिए, हमें SP_changedbowner का उपयोग करते हुए, वर्तमान प्रकाशन डेटाबेस स्वामी को एक मान्य डेटाबेस उपयोगकर्ता के साथ प्रतिस्थापित करके अद्यतन करने की आवश्यकता है सिस्टम संग्रहीत प्रक्रिया, या बस डेटाबेस गुण विंडो से। उसके बाद, जॉब एक्टिविटी मॉनिटर विंडो का उपयोग करके लॉग रीडर एजेंट जॉब को फिर से चलाएँ, फिर पुष्टि करें कि क्या एजेंट समस्या अब उपलब्ध नहीं है, जैसा कि नीचे दिखाया गया है, प्रतिकृति मॉनिटर का उपयोग करें:

निष्कर्ष

इस लेख में, हमने विभिन्न साइटों के बीच डेटा की प्रतिलिपि बनाने के लिए SQL सर्वर प्रतिकृति सुविधा का उपयोग करते समय आपके सामने आने वाली विभिन्न समस्याओं और इन समस्याओं को ठीक करने का तरीका प्रदर्शित किया है।

SQL सर्वर इंजन को नवीनतम SPs और CU के साथ अद्यतित रखने की अत्यधिक अनुशंसा की जाती है, इसलिए SQL सर्वर प्रतिकृति सुविधाओं से संबंधित सभी बग स्वचालित रूप से ठीक हो जाएंगे। अंत में, एक सक्रिय SQL सर्वर डेटाबेस व्यवस्थापक के रूप में, किसी भी समस्या को बड़ा और ठीक करने के लिए कठिन होने से पहले शुरू से ही ठीक करने के लिए अपनी प्रतिकृति साइट पर नज़र रखें।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. sqlAlchemy के साथ संग्रहीत कार्यविधियाँ

  2. SQL सर्वर के डेटाबेस में एक स्ट्रिंग कैसे खोजें

  3. या SQL सर्वर में केस स्टेटमेंट के साथ समर्थित नहीं है

  4. विभिन्न SQL सर्वर उदाहरणों के लिए SSMS में स्थिति पट्टी का रंग कैसे सेट करें - SQL सर्वर / TSQL ट्यूटोरियल भाग 6

  5. SQL सर्वर में CAST () बनाम TRY_CAST ():क्या अंतर है?