यह ब्लॉग बैकअप का उपयोग करके सभी आर्टिकल्स के लिए स्नैपशॉट लिए बिना सब्सक्रिप्शन को इनिशियलाइज़ करने के लिए ट्रांजैक्शनल रेप्लिकेशन सेट अप करने के लिए आवश्यक विस्तृत चरणों को प्रदर्शित करता है, जैसा कि हम जानते हैं कि बड़े डेटाबेस के लिए स्नैपशॉट विकल्प समय लेने वाला है।
परिचय
बहुत बड़े SQL Server डेटाबेस के लिए ट्रांजैक्शनल रेप्लिकेशन सेट अप करना एक बड़ा काम है। आमतौर पर, आप किसी भी डेटाबेस पर ट्रांजैक्शनल रेप्लिकेशन सेट अप स्नैपशॉट जनरेट करके करेंगे, बिना यह विचार किए कि स्नैपशॉट में कितना समय लगेगा और स्नैपशॉट फ़ोल्डर के लिए डिस्क की मात्रा कितनी होगी। प्रारंभिक स्नैपशॉट बनाने और सब्सक्राइबर्स को रीइनिशियलाइज़ करने में बहुत लंबा समय लेने से बचने के लिए, इस ब्लॉग में, आप SQL डेटाबेस बैकअप से सब्सक्राइबर को इनिशियलाइज़ करने का एक आसान तरीका तलाशेंगे।
आइए सेटअप के विस्तृत चरणों में आते हैं:
ट्रांजैक्शनल रेप्लिकेशन सेट अप करने के लिए - सबसे पहले, आपको डिस्ट्रीब्यूटर कॉन्फ़िगर करने की आवश्यकता है। इस लैब में, मैंने पहले ही डिस्ट्रीब्यूटर कॉन्फ़िगर कर लिया है, और डिस्ट्रीब्यूटर को कैसे कॉन्फ़िगर करें, इस पर निम्नलिखित संदर्भ लिंक है।
https://docs.microsoft.com/en-us/sql/relational-databases/replication/configure-publishing-and-distribution?view=sql-server-ver15
प्रक्रिया चरण अवलोकन:
• पब्लिकेशन बनाएं।
• पब्लिकेशन प्रॉपर्टीज संशोधित करें।
• पब्लिशर डेटाबेस का बैकअप लें।
• सब्सक्राइबर डेटाबेस पर बैकअप रिस्टोर करें।
• T-SQL के माध्यम से सब्सक्रिप्शन बनाएं क्योंकि GUI डेटाबेस बैकअप से इनिशियलाइज़ करने का समर्थन नहीं करता।
इस परिदृश्य में, ट्रांजैक्शनल रेप्लिकेशन को निम्नलिखित विवरणों के साथ कॉन्फ़िगर किया जाएगा।
- पब्लिशर + डिस्ट्रीब्यूटर: Node1
- सब्सक्राइबर: Node2
- पब्लिशर डेटाबेस: ABC_Pub
- सब्सक्राइबर डेटाबेस: ABC_Sub
- पब्लिकेशन: ABC_Pub_Bkp
- सब्सक्रिप्शन: ABC_Sub_Bkp
चरण 1: रेप्लिकेशन के लिए डेटाबेस चुनकर पब्लिकेशन बनाएं।
पब्लिशर डेटाबेस: ABC_Pub
चरण 2: पब्लिकेशन का प्रकार और रेप्लिकेशन में भाग लेने वाली टेबल्स चुनें।
रेप्लिकेट करने के लिए आर्टिकल्स चुनें:
चरण 3: हमारे मामले में, हम स्नैपशॉट के बजाय डेटाबेस बैकअप फ़ाइल का उपयोग कर रहे हैं, इसलिए हम उन्हें खाली छोड़ देंगे और अगले पर क्लिक करेंगे, जैसा कि निम्न स्नैपशॉट में दिखाया गया है।
बनाया गया पब्लिकेशन- ABC_Pub_Bkp
चरण 4: 'Allow initialization from backup files' को true पर सेट करें।
T-SQL से:
GUI से: पब्लिकेशन प्रॉपर्टीज पर, सब्सक्रिप्शन विकल्प चुनें और "Allow initialization from backup files" को "true" पर सेट करें और परिवर्तन सहेजने के लिए Ok पर क्लिक करें।
चरण 5: डिस्ट्रीब्यूशन क्लीनअप SQL Server जॉब अक्षम करें (जॉब नाम पर राइट-क्लिक करें और अक्षम करें पर क्लिक करें):
अगले चरण के रूप में बैकअप लेने से पहले जॉब को अक्षम करना आवश्यक है। यदि नहीं, तो आप निम्न त्रुटि का अनुभव कर सकते हैं।
चरण 6: पब्लिशर से डेटाबेस बैकअप लें।
चरण 7: सब्सक्राइबर सर्वर पर बैकअप रिस्टोर करें।
चरण 8: निम्न स्नैपशॉट में उल्लिखित पैरामीटर्स को पास करके पब्लिकेशन डेटाबेस पर sp_addsubscription निष्पादित करें।
चरण 9: अन्य सभी चरण पूरे होने के बाद, डिस्ट्रीब्यूशन क्लीनअप जॉब सक्षम करें।
चरण 10: अब SSMS के तहत रेप्लिकेशन → रेप्लिकेशन मॉनिटर का उपयोग करके रेप्लिकेशन स्थिति जांचें।
हम देख सकते हैं कि प्रदर्शन उत्कृष्ट स्थिति दिखाता है और पूरी प्रक्रिया में कोई स्नैपशॉट एजेंट नहीं बनाया गया है क्योंकि हमने बैकअप फ़ाइल का उपयोग इनिशियलाइज़ करने के लिए किया है।
निष्कर्ष
डेटाबेस बैकअप फ़ाइलों से इनिशियलाइज़ेशन कई समस्याओं को हल करता है जब हम बड़े डेटाबेस को सिंक्रनाइज़ करने का प्रयास करते हैं लेकिन अपनी कुछ समस्याएं भी पैदा करता है। इन समस्याओं को कुछ योजना के साथ हल किया जा सकता है और उम्मीद है कि यह लेख प्रक्रिया को सरल बनाने में मदद करता है।
कोई टिप्पणी करने या प्रश्न पूछने के लिए फीडबैक टैब का उपयोग करें। आप हमारे साथ बातचीत भी शुरू कर सकते हैं।