कैसे बताएं कि क्या बैकअप फ़ाइल में CDC है?


9

SQL Server 2008 का उपयोग 2014 से 2014 तक, मुझे पता है कि कैसे बैकअप डेटा कैप्चर सक्षम (सीडीसी) के साथ एक डेटाबेस को बैकअप और पुनर्स्थापित करना है, लेकिन मैं जो देख रहा हूं वह यह निर्धारित करने के लिए एक पूर्ण बैकअप फ़ाइल को क्वेरी करने का एक तरीका है कि इसमें सीडीसी डेटा शामिल है।

क्या शानदार होगा RESTORE FILELISTONLYजो डेटाबेस से फ़ाइल सूची प्राप्त करता है, लेकिन इसके बजाय यह निर्धारित करने के लिए सीडीसी का दर्जा मिलता है कि क्या पुनर्स्थापना के लिए KEEP_CDC ध्वज का उपयोग करने की आवश्यकता होगी?

क्या यह निर्धारित करने का कोई तरीका है कि बैकअप में सीडीसी डेटा है या नहीं?

धन्यवाद!

जवाबों:


7

(अगर किसी को एक रास्ता मिल जाता है - जो मुझे नहीं लगता कि मौजूद है, तो मैं अपना उत्तर हटा दूंगा :-))

क्या यह निर्धारित करने का कोई तरीका है कि बैकअप में सीडीसी डेटा है या नहीं?

मुझे नहीं लगता कि किसी बैकअप से जानने का कोई तरीका है, अगर सीडीसी सक्षम है या नहीं।

सबसे आप पता कर सकते हैं यदि डेटाबेस प्रतिकृति में शामिल किया गया था या नहीं (हुड का उपयोग करता है के तहत पाठक एजेंट है कि लेन-देन लॉग स्कैन करता है लॉग इन करें) का उपयोग करके DatabaseBackupLSN के परिणाम में RESTORE HEADERONLYDatabaseBackupLSN जैसा है "चौकी के शुरू" है कि शुरू हो रहा है जब बैकअप शुरू होता है। FirstLSNयदि डेटाबेस बेकार है और कोई प्रतिकृति कॉन्फ़िगर नहीं किया गया है, तो यह LSN मेल खाएगा ।

मैं यह मानता हूं कि सीडीसी सक्षम है या नहीं, इसके लिए microsoft सतह नहीं रखता है, साथ ही साथ सुरक्षा बात भी हो सकती है। सीडीसी एक उद्यम स्तर की तकनीक है जो स्तंभ स्तर तक सभी तरह के परिवर्तनों को ट्रैक करने में सक्षम बनाती है। यह HIPAA, FISMA, आदि जैसे विनियमों द्वारा आवश्यक है।

से पुनर्स्थापित कर रहा है या अटैच किया जा रहा एक डाटाबेस बदलें डाटा कैप्चर के लिए सक्षम

SQL सर्वर डेटाबेस को पुनर्स्थापित या संलग्न करने के बाद डेटा कैप्चर सक्षम रहता है या नहीं यह निर्धारित करने के लिए SQL सर्वर निम्न तर्क का उपयोग करता है:

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

SQL सर्वर डेटाबेस '%। * Ls' को लोड नहीं कर सकता क्योंकि परिवर्तन डेटा कैप्चर सक्षम है। SQL सर्वर का वर्तमान में स्थापित संस्करण परिवर्तन डेटा कैप्चर का समर्थन नहीं करता है। या तो SQL सर्वर के एक समर्थित संस्करण का उपयोग करके डेटाबेस में परिवर्तन डेटा कैप्चर को अक्षम करें, या किसी ऐसे डेटा को कैप्चर करने के लिए इंस्टेंस को अपग्रेड करें।


परिजन - हमेशा की तरह, आप विवरण के लिए एक रॉकस्टार DBA.Thanks हैं। मुझे लगता है कि मैं एक ही निष्कर्ष पर आया था, और वास्तव में किसी को यह सत्यापित करने के लिए देख रहा था कि कोई रास्ता नहीं है अगर बैकअप में सीडीसी है। आपका दिन अच्छा रहे। धन्यवाद!
स्टीव स्टैडमैन

@SteveStedman दयालु शब्दों के लिए धन्यवाद। यदि आपके प्रश्न का उत्तर दिया गया है तो कृपया उत्तर दें। इससे भविष्य के पाठकों को भी मदद मिलेगी :-)
परिजन शाह

धन्यवाद स्टीव पोस्ट के लिए और धन्यवाद @Kin, आज कुछ नया सीखा।
SQLBoy

नोट: CDC अब 2016SP1 मानक या उससे ऊपर, और अधिक मुख्यधारा बनकर उपलब्ध है। : मैं पर SSMS पुनर्स्थापन UI में सीडीसी विकल्प चाहते हैं, मैं इस कनेक्ट होने पर भी सुझाव दिया connect.microsoft.com/SQLServer/feedback/details/3144490/...
GilesDMiddleton
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.