सवाल एसक्यूएल सर्वर (2005/2008): क्या पूर्ण बैकअप पूर्ण रिकवरी मोड में लॉग को छोटा करता है


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

क्या एक पूर्ण डेटाबेस बैकअप लेनदेन लॉग (पूर्ण रिकवरी मोड का उपयोग कर) को छोटा करता है?

  • यदि हां: एमएसडीएन में इसका उल्लेख कहां है? मुझे बस इतना ही पता चला था कि केवल बैकअप लॉग लॉग को छोटा कर देता है।

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


40
2017-08-17 09:35


मूल




जवाब:


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

अधिक प्रश्नों के साथ पालन करने के लिए स्वतंत्र महसूस करें। बीटीडब्ल्यू - टेकनेट पत्रिका के लिए मैंने लिखा लंबा लेख भी देखें SQL सर्वर में लॉगिंग और रिकवरी को समझना

धन्यवाद


42
2017-08-18 01:14



आपके सुपर उत्तर के लिए बहुत बहुत धन्यवाद और लेख जिसने मेरे दिमाग में दस लाख प्रश्नों का उत्तर दिया है। - M.Ali


एक पूर्ण बैकअप लॉग को छोटा नहीं करता है, आपको बैकअप लॉग ऑपरेशन करना होगा। एक पूर्ण बैकअप लॉग श्रृंखला को फिर से सेट नहीं करता है - जो पूरी तरह से प्रतिकृति / लॉग शिपिंग, आदि को खराब कर देगा।

आपको SQL सर्वर बैकअप कैसे करता है, इस बारे में बारीकी से देखना होगा, लेकिन पता है कि बैलेंस में लंबे समय तक चलने वाले / लंबे समय तक चलने वाले लेन-देन शामिल नहीं हैं (अन्यथा बैकअप कभी पूरा नहीं हो सकता है) इसलिए यह कहना बिल्कुल सटीक नहीं है कि पूर्ण बैकअप ऑनलाइन डेटाबेस को अगली लॉग बैकअप अप्रचलित बनाने की गारंटी है।

http://msdn.microsoft.com/en-us/library/ms175477.aspx


12
2017-08-17 12:14





मेरी समझ से एकमात्र चीज जो ट्रांजैक्शन लॉग को छोटा करती है वह एक लॉग बैकअप है

एक पूर्ण बैकअप केवल लॉग के पर्याप्त प्रतिलिपि बनाता है ताकि यह लेनदेनपूर्वक संगत हो, क्योंकि बैकअप ऑपरेशन को पूरा करने में कुछ समय लगता है और उस समय, कॉपी किए गए पृष्ठ बदल सकते हैं।

समय-समय पर वसूली के लिए आपको अभी भी अपने लॉग बैकअप की आवश्यकता है।

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

वह इस मंच पर सवालों के जवाब भी देते हैं, इसलिए यह मेरे द्वारा दूसरी / तीसरी हाथ की जानकारी के बाद भी एक बेहतर प्राधिकारी होगा :)


7
2017-08-18 00:36





लोगों को अक्सर पूर्ण बैकअप और लॉग बैकअप के बारे में गलत धारणा होती है। बैकअप के लिए काम करने के लिए FULL बैकअप रिकवरी मॉडल, टी-लॉग का उपयोग किया जाना चाहिए, बैकअप के दौरान डेटाबेस में अभी भी लेन-देन चल रहे हैं (जब तक कि आप एक तथाकथित नहीं करते COLD जब आप डेटाबेस बंद करते हैं तो बैकअप)। जब आपके पास डेटाबेस होता है तो ओरेकल उसी अवधारणा का उपयोग करता है ARCHIVELOG मोड। बैकअप का अनुक्रम इस तक उबाल जाता है:

  1. बैकअप प्रारंभ करें - वास्तविक फ़ाइलों में सभी कार्यों को निलंबित करें और टी-लॉग पर लिखें।
  2. बैकअप करें - सभी लेन-देन जारी हैं, लेकिन वास्तविक फ़ाइलों को नहीं लिखे गए हैं, वे टी-लॉग में लिखे गए हैं
  3. अंत बैकअप - वास्तविक फ़ाइलों को डेटाबेस लेनदेन लिखना फिर से शुरू करें।
  4. यदि आवश्यक फाइलों में टी-लॉग में क्या आवश्यक है तो फ्लश करें।

यही कारण है कि टी-लॉग डिफ़ॉल्ट रूप से छंटनी / संकीर्ण नहीं होते हैं, क्योंकि वे बैकअप चरण के दौरान लेनदेन निरंतरता का एक महत्वपूर्ण हिस्सा हैं।


4
2018-01-27 10:27





लॉग को कम करने के साथ लॉग को छेड़छाड़ न करें।

  • ट्रंकेट करने के लिए अंतिम चेकपॉइंट से पहले लॉग में लेनदेन को हटाना है, (चेकपॉइंट तब होता है जब लेन-देन डेटाबेस में ही फंस जाते हैं)। यह बैकअप आदेश का उपयोग करके किया जाता है।

  • लॉग इन करने के लिए लॉग को वास्तविक लॉग फ़ाइल आकार को कम करना है। यह डीबीसीसी कमांड का उपयोग करके किया जाता है।


0
2017-09-03 00:58





मूल रूप से आपको हर बार लेनदेन लॉग automaticaly को कम करने की आवश्यकता नहीं होती है क्योंकि लेनदेन लॉग को काम करने की जगह की आवश्यकता होती है और यदि आप स्वचालित रूप से छंटनी करते हैं तो यह लगभग उसी आकार में रहेगा।


0
2017-10-07 08:09