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

स्नैपशॉट प्रतिकृति कैसे बनाएं

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

डेमो सेटअप

इस डेमो के लिए, मैंने एक डेटाबेस सर्वर में दो SQL सर्वर इंस्टेंस बनाए हैं। उदाहरण के नाम और विवरण निम्नलिखित हैं:

[टेबल आईडी=54 /]

डेमो सेटअप में, मैंने डिस्ट्रीब्यूटर नहीं बनाया है, इसलिए पब्लिशर इंस्टेंस भी डिस्ट्रीब्यूटर के रूप में काम करेगा। मैं उन तालिकाओं और डेटा को दोहराने जा रहा हूं जो व्यक्ति . से संबंधित हैं AdventureWorks2014 डेटाबेस का स्कीमा।

प्रकाशक को कॉन्फ़िगर करना

प्रकाशक को कॉन्फ़िगर करने के लिए, SQL सर्वर प्रबंधन स्टूडियो खोलें, डेटाबेस उदाहरण का विस्तार करें, प्रतिकृति का विस्तार करें नोड, Lओकल पब्लिकेशन पर राइट-क्लिक करें और नया प्रकाशन select चुनें . निम्न चित्र देखें:

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

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

अगली स्क्रीन पर, एक प्रकाशन प्रकार चुनें। प्रकाशन प्रकार सूची बॉक्स में प्रकार सूचीबद्ध हैं, और अलग-अलग प्रकाशन प्रकार के लिए, इसके विवरण प्रकाशन प्रकार विवरण में भी स्पष्ट किए गए हैं पाठ बॉक्स। स्नैपशॉट प्रतिकृति Select चुनें n और अगला click क्लिक करें . निम्न चित्र देखें:

प्रतिकृति में, डेटाबेस ऑब्जेक्ट को आलेख के रूप में जाना जाता है। लेखों . पर स्क्रीन, प्रकाशन डेटाबेस के भीतर डेटाबेस ऑब्जेक्ट की सूची दिखाई जाती है। मैं उन सभी तालिकाओं के डेटा को दोहराने जा रहा हूं जो व्यक्ति स्कीमा से संबंधित हैं, इसलिए उन तालिकाओं का चयन करें जो लेखों की सूची से व्यक्ति स्कीमा से संबंधित हैं और अगला पर क्लिक करें। . निम्न चित्र देखें:

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

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

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

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

अगली स्क्रीन पर, प्रकाशन का नाम प्रदान करें, प्रतिकृति बनाने के लिए किए जाने वाले कार्यों के सारांश की समीक्षा करें और समाप्त करें पर क्लिक करें। प्रकाशन बनाने और नया प्रकाशन विज़ार्ड बंद करने के लिए। निम्न चित्र देखें:

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

उन्हें देखने के लिए, SQL सर्वर एजेंट का विस्तार करें>> नौकरियों का विस्तार करें . निम्न चित्र देखें:

एक बार प्रकाशन कॉन्फ़िगर हो जाने पर, ग्राहकों को कॉन्फ़िगर करें।

सदस्य को कॉन्फ़िगर करना

सब्सक्राइबर को कॉन्फ़िगर करने के लिए, पहले, किसी अन्य SQL इंस्टेंस से कनेक्ट करें। इंस्टेंस से कनेक्ट होने के बाद, प्रतिकृति का विस्तार करें और स्थानीय सदस्यता . पर राइट-क्लिक करें . निम्न चित्र देखें:

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

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

एक बार प्रकाशक के साथ संबंध स्थापित हो जाने के बाद, स्नैपशॉट_प्रतिकृति प्रकाशन और AdventureWorks2014 डेटाबेस डेटाबेस और प्रकाशन . में दिखाया जाएगा पाठ बॉक्स। स्नैपशॉट_प्रतिकृति का चयन करें और अगला . क्लिक करें . निम्न चित्र देखें:

अगली स्क्रीन पर, वितरण एजेंट स्थान चुनें। इस डेमो के लिए, मैं सदस्यता प्राप्त करें का उपयोग करूंगा , इसलिए प्रत्येक एजेंट को उसके ग्राहक पर चलाएँ . चुनें विकल्प और क्लिक करें अगला :

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

अगली स्क्रीन पर, वितरण एजेंट सुरक्षा कॉन्फ़िगर करें। सुरक्षा को कॉन्फ़िगर करने के लिए, […] . पर क्लिक करें बटन। वितरण एजेंट सुरक्षा डायलॉग बॉक्स खुलता है। पहले खंड में, डोमेन खाता प्रदान करें जिसके तहत वितरण एजेंट प्रक्रिया चलेगी। वितरण एजेंट SQL सर्वर एजेंट सेवा के अंतर्गत चलेगा, इसलिए SQL सर्वर एजेंट सेवा खाते के अंतर्गत चलाएँ चुनें विकल्प।

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

ठीकक्लिक करें डायलॉग बॉक्स को बंद करने के लिए। और वितरण एजेंट सुरक्षा . पर स्क्रीन, अगला click क्लिक करें . निम्न चित्र देखें:

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

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

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

अगली स्क्रीन पर, सदस्यता बनाने के लिए किए गए कार्यों की एक सूची दी गई है। आप उनकी समीक्षा कर सकते हैं और समाप्त . क्लिक कर सकते हैं . निम्न चित्र देखें:

सदस्यता बन जाने के बाद, आप सदस्यता को स्थानीय सदस्यता . के अंतर्गत देख सकते हैं नोड. निम्न चित्र देखें:

स्नैपशॉट शेड्यूल बदलना

जैसा कि मैंने उल्लेख किया है, जब हम कोई प्रकाशन बनाते हैं, तो हम स्नैपशॉट एजेंट से एक स्नैपशॉट अंतराल को कॉन्फ़िगर कर सकते हैं। स्क्रीन। हम स्नैपशॉट प्रतिकृति SQL कार्य के शेड्यूल को बदलकर स्नैपशॉट अंतराल को बदल सकते हैं। ऐसा करने के लिए, प्रकाशक सर्वर पर, SQL सर्वर एजेंट का विस्तार करें>> नौकरियों का विस्तार करें और स्नैपशॉट प्रतिकृति कार्य (TTI412-VM\SQL2017-AdventureWorks2014-Snapshot_Replication-4) पर राइट-क्लिक करें और गुण चुनें . निम्न चित्र देखें:

कार्य गुण संवाद बॉक्स खुलता है। अनुसूची . चुनें पृष्ठ पर, शेड्यूल चुनें और संपादित करें click पर क्लिक करें . निम्न चित्र देखें:

नौकरी अनुसूची डायलॉग बॉक्स खुलता है। उपयुक्त शेड्यूल कॉन्फ़िगर करें और ठीक . क्लिक करें ।

उपरोक्त कॉन्फ़िगरेशन हर घंटे एक स्नैपशॉट उत्पन्न करता है।

स्नैपशॉट फ़ाइलों का स्थान बदलना

हम स्नैपशॉट फ़ाइलों को किसी भिन्न फ़ोल्डर में भी रख सकते हैं। इस डेमो के लिए, स्नैपशॉट फ़ाइलें डिफ़ॉल्ट फ़ोल्डर में संग्रहीत की जाती हैं जो E:\ReplicationSnapshot है . मैं स्थान स्नैपशॉट फ़ाइलें बदल दूंगा। नया स्थान होगा E:\Snapshot\PersonsSchema

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

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

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

हाँ क्लिक करें। यह एक नया स्नैपशॉट जेनरेट करेगा और स्नैपशॉट फ़ाइलों को E:\Snapshots\PersonsSchema\unc पर सहेजेगा . निम्न चित्र देखें:

प्रतिकृति स्थिति देखना

आप प्रतिकृति मॉनिटर का उपयोग कर सकते हैं प्रतिकृति स्थिति देखने के लिए। प्रतिकृति मॉनीटर खोलने के लिए, प्रतिकृति . को विस्तृत करें n नोड>> विस्तृत करें स्थानीय प्रकाशन>> राइट-क्लिक करें स्नैपशॉट_प्रतिकृति और प्रतिकृति मॉनिटर लॉन्च करें select चुनें . निम्न चित्र देखें।

प्रतिकृति मॉनीटर का उपयोग करके, आप देख सकते हैं:

  1. प्रतिकृति की स्थिति
  2. सदस्यता की सूची
  3. अंतिम सिंक्रनाइज़ेशन दिनांक और समय।

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

एजेंट . के तहत टैब, आप निम्नलिखित विवरण देख सकते हैं:

  1. प्रकाशन कार्य की स्थिति।
  2. प्रकाशन कार्य का नाम।
  3. प्रकाशन कार्य की अंतिम प्रारंभ तिथि और समय।
  4. प्रकाशन कार्य पूरा करने की अवधि।
  5. आखिरी कार्रवाई प्रकाशन कार्य द्वारा की गई थी।

सारांश

इस लेख में, मैंने समझाया था:

  1. उच्च स्तर स्नैपशॉट प्रतिकृति का सारांश है।
  2. प्रकाशक और ग्राहक को कैसे कॉन्फ़िगर करें।
  3. प्रतिकृति मॉनीटर और उसका उपयोग।

उपयोगी टूल:

SQL सर्वर के लिए dbForge डेटा तुलना - बड़े डेटा के साथ काम करने में सक्षम शक्तिशाली SQL तुलना उपकरण।

dbForge स्कीमा 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. समानांतर योजनाएँ कैसे शुरू होती हैं - भाग 5

  2. SQL चीट शीट:SQL, SQL कमांड और SQL इंजेक्शन क्या है?

  3. विभाजन के साथ प्रदर्शन लाभ ढूँढना

  4. स्केलग्रिड शीर्ष 100 क्लाउड सेवा प्रदाताओं में स्थान पर है

  5. SQL क्वेरी से तालिका कैसे बनाएं