SQL Server 2008 में बैकअप से अनुक्रमित कैसे करें


19

हमारे रात्रिकालीन पूर्ण (और आवधिक अंतर) बैकअप काफी बड़े होते जा रहे हैं, जो ज्यादातर हमारे टेबलों पर अनुक्रमित की मात्रा के कारण होता है; लगभग आधा बैकअप आकार अनुक्रमित शामिल है।

हम अपने बैकअप के लिए सरल पुनर्प्राप्ति मॉडल का उपयोग कर रहे हैं ।

वहाँ किसी भी तरह से, का उपयोग कर FileGroupsया किसी अन्य फ़ाइल विभाजन विधि के माध्यम से है, बैकअप से अनुक्रमित बाहर करने के लिए ?

यह अच्छा होगा अगर इसे पूर्ण-पाठ कैटलॉग तक बढ़ाया जा सके, साथ ही।

जवाबों:


15

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

फिर आप अपने बैकअप को रोकते हैं ताकि आप हर रात प्राथमिक के फ़ाइलग्रुप बैकअप कर रहे हों, और हर X मिनट में लॉग बैकअप लें।

जब आपदा आती है, तो आप प्राथमिक फ़ाइल समूह को अपने आप पुनर्स्थापित करते हैं। डेटा अचानक ऑनलाइन है, लेकिन इंडेक्स नहीं हैं। हालांकि, सामान्य स्थिति में वापस आने के लिए, आपको उस डेटा को एक नए स्वच्छ डेटाबेस में निर्यात करना होगा और वहां से अनुक्रमित जोड़ना होगा। आप डेटाबेस को पूरी तरह से ऑनलाइन फाइलग्रुप के सभी को पुनर्स्थापित किए बिना नहीं ला सकते हैं, और आप यह नहीं कह सकते हैं कि "मुझे उस फ़ाइल समूह की अब और आवश्यकता नहीं है।"

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


हे, मैंने नॉन-क्लस्टर्ड इंडेक्स को अपने फाइलग्रुप में स्थानांतरित कर दिया था; साधारण रिकवरी मॉडल ने मुझे पूरी तरह से प्रभावित कर दिया। इंडेक्स वास्तव में डेटा से बड़ा था - यह मुझे कैसे परेशान करता है! ओह अच्छा, शायद कुछ 3 पार्टी एक जादुई गोली जारी करेंगे संकेत संकेत :)
जारोड डिक्सन

1
और हो सकता है, बस हो सकता है, आपको इसके लिए मुफ्त लाइसेंस मिलेगा। ;-)
ब्रेंट ओजर

5

ईमानदारी से, आप वास्तव में ऐसा नहीं करना चाहते हैं, भले ही आप अन्य मुद्दों को दूर करें जो अन्य लोग यहां उठाते हैं।

जब आप किसी आपात स्थिति में बैकअप को पुनर्स्थापित करते हैं, तो आप अनुक्रमित के पुनर्निर्माण के लिए इंतजार नहीं करना चाहते हैं, और जब तक आप ऐसा नहीं करते हैं, तब तक आपको घृणित प्रदर्शन का सामना करना पड़ता है।

मैं ऐसी स्थिति के बारे में नहीं सोच सकता जहाँ आप अनुक्रमित के बिना एक बैकअप को पुनर्स्थापित करना चाहते हैं, इसलिए सभी मामलों में आप वास्तव में उन्हें एक ही समय में वापस करना चाहेंगे।

आपको इस समस्या के अन्य समाधानों की तलाश करने की आवश्यकता होगी ...

-Adam


1
"आप अनुक्रमणिका के पुनर्निर्माण के लिए इंतजार नहीं करना चाहते हैं" बहुत अनुमान के मुताबिक, आईएमओ
जेफ एटवुड

2
हां, लेकिन ध्यान रखें कि मैं यहां सामान्य कर रहा हूं। मुझे विश्वास नहीं हुआ कि ऐसी और भी स्थितियाँ हैं जहाँ अनुक्रमणिका को खोदना और पुनर्निर्माण करना बेहतर है जहाँ ऐसी स्थितियाँ हैं जहाँ अनुक्रमणिका का बैकअप लेना और पुनर्निर्माण से बचना बेहतर है। दूसरे शब्दों में, एक मामला आम तौर पर बेहतर होता है, और जब तक कोई विशेष स्थिति इसके लिए कॉल नहीं करती है, तब तक किसी को उनके समर्थन के लिए गलत करना चाहिए। कहा जा रहा है, हर स्थिति अलग है। मैं यह जानने के लिए उत्सुक हूं कि एसओ इंडेक्स को फिर से बनाने में कितना समय लगता है, और साइट का प्रदर्शन तब तक भुगतना पड़ता है जब तक वे काम नहीं करते हैं (मान लें कि यह पुनर्निर्माण के दौरान ऊपर है)।
एडम डेविस

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

3

ऐसा लगता है जैसे यह समर्थित नहीं है। इस बग रिपोर्ट की जानकारी से :

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


यह पूर्ण-पाठ अनुक्रमित के लिए एक मुद्दा नहीं होगा, यह होगा? वे बहुत बड़े होते हैं।
माइकल टेपर

1

एक पागल विचार हो सकता है, लेकिन यहाँ जाता है।

  1. अपने गैर-क्लस्टर किए गए अनुक्रमों को छोड़ दें जो बहुत सारे स्थान लेते हैं
  2. एक बैकअप करें
  3. आपके द्वारा गिराए गए अनुक्रमितों को फिर से बनाएं

यदि आप डेटाबेस को दिन में कुछ डाउन-टाइम की अनुमति देते हैं, तो बेशक आप वास्तव में ऐसा कर सकते हैं।

इसके अलावा, अपने क्लस्टर किए गए अनुक्रमों को न छोड़ें क्योंकि SQL सर्वर इन ढेर को बदलने में बहुत समय बर्बाद करेगा।

क्या उस अतिरिक्त डिस्क स्थान को खरीदना एक आसान समाधान की तरह लगता है?

क्या आपने संकुचित बैकअप करने पर विचार किया है ? यह 2008 की एक नई विशेषता है, यह आपके लिए एक विकल्प हो सकता है।


हां, हमने बैकअप के लिए संपीड़न चालू कर दिया है, लेकिन अंतर्निहित संपीड़न इतना बढ़िया नहीं है। हमारे पास वास्तव में एक सप्ताह का अंत है, गैर-संपीड़ित बैकअप लिया गया है और फिर इसे नीचे लाने के लिए हमारे लिए 7zip है; यह आकार के बारे में 1/3 है, लेकिन इसे चलाने में कुछ समय लगता है!
जारोड डिक्सन

DB डाउनटाइम के लिए, क्या हम वास्तव में जितना संभव हो उतना serverfault.com और stackoverflow.com दोनों के बिना रह सकते हैं? मुझे लगता है कि इस विचार से :) कंपकंपी
जारोड डिक्सन

मैंने खुद इसका परीक्षण नहीं किया है, लेकिन मुझे उतना ही संदेह है। यह बहुत विन्यास योग्य नहीं है। यदि आपका अभी भी एक विकल्प के रूप में संपीड़न को देख रहा है, तो SQL Lightspeed पर एक नज़र डालें (महंगा, लेकिन भयानक, लेकिन कीमत बहुत परक्राम्य है) और RedGate का SQL बैकअप। बहुत विन्यास और उत्कृष्ट परिणाम
निक काव्यादि
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.