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

SQL सर्वर लेनदेन लॉग फ़ाइल से डेटा पुनर्प्राप्त करने के तरीके

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

ऐसे समय होते हैं जब क्लाइंट अपने SQL सर्वर डेटाबेस में शोकजनक डेटाबेस परिस्थितियों का सामना करते हैं। प्रशासन और उनकी डेटाबेस फ़ाइलों के समर्थन के दौरान स्थितियां उत्पन्न हो सकती हैं। कई बार डेटाबेस ऑब्जेक्ट अनजाने में डिलीट हो जाते हैं, जिसके कारण डेटाबेस एडमिन को कई समस्याओं का सामना करना पड़ता है। इसके बाद, सामान्य कार्य प्रक्रिया पर लौटने के लिए, फ़ाइलों को वापस SQL ​​सर्वर डेटाबेस में पुनर्प्राप्त किया जाना चाहिए।

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

SQL सर्वर ट्रांजेक्शन लॉग फ़ाइल से डेटा कैसे पुनर्प्राप्त करें

विभिन्न तकनीकों का विश्लेषण करने के लिए जिनका उपयोग हम SQL सर्वर लेनदेन लॉग फ़ाइल से डेटा पुनर्प्राप्त करने के लिए कर सकते हैं, हम नीचे दी गई स्क्रिप्ट का उपयोग करते हुए एक तालिका के साथ एक और डेटाबेस बनाएंगे:

डेटाबेस और टेबल बनाने के बाद, हम नीचे दिए गए INSERT INTO T-SQL स्टेटमेंट का उपयोग करते हुए, उस टेबल को 30 रिकॉर्ड्स से भर देंगे:

डेटाबेस से अभी तक कोई बैकअप नहीं लिया गया है, हम तालिका के डेटा को कैसे पुनर्प्राप्त कर सकते हैं यदि उस तालिका पर नीचे अद्यतन कमांड निष्पादित किया जाता है जिसमें डेटा को बदलने के लिए कहीं भी कथन का उपयोग नहीं किया जाता है?

अंतर्निहित विधियों का उपयोग करना

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

ताकि fn_dblog() . का उपयोग किया जा सके फ़ंक्शन, आपको लॉग के दो पैरामीटर, शुरुआत और अंत एलएसएन देना होगा। SQL लेन-देन लॉग फ़ाइल के डायनेमिक सेगमेंट में पहुँच योग्य सभी लॉग देखने के लिए, आप इन दो मापदंडों के लिए NULL मान पास कर सकते हैं। जैसा कि परिणाम fn_dblog() कार्य से वापस आया है, इसमें 129 कॉलम हैं, केवल उन खंडों को चुनना बेहतर है जिनमें वह डेटा है जिसके लिए आप उत्सुक हैं और परिणाम को केवल उस ऑपरेशन को दिखाने के लिए फ़िल्टर करें जिसे आप पुनर्प्राप्त करने का इरादा रखते हैं। उदाहरण के लिए, जब कोई अन्य रिकॉर्ड एम्बेड किया जाता है तो LOP_INSERT_ROWS ऑपरेशन लॉग होता है, नया रिकॉर्ड हटाए जाने पर LOP_DELETE_ROWS ऑपरेशन लॉग होता है, और वर्तमान रिकॉर्ड अपडेट होने पर LOP_MODIFY_ROW ऑपरेशन लॉग होता है। नीचे दी गई स्क्रिप्ट का उपयोग उस डेटाबेस पर किए गए अपडेट स्टेटमेंट की जांच के लिए किया जा सकता है:

2.) fn_dump_dblog(): बाद के ढांचे ने कार्य किया, fn_dump_dblog(), fn_dblog() कार्य पर एक लाभ यह है कि ऑनलाइन लेनदेन लॉग फ़ाइल को पढ़ने की क्षमता के बावजूद, SQL सर्वर लेनदेन लॉग बैकअप को पढ़ने के लिए इसका बहुत अच्छी तरह से उपयोग किया जा सकता है। फिर से, fn_dump_dblog() फ़ंक्शन का उपयोग करने के लिए, आपको 68 अनिवार्य पैरामीटर देने होंगे, जैसा कि नीचे स्क्रिप्ट में दिखाया गया है:

3.) DBCC पेज कमांड: SQL सर्वर हमें अनगिनत DBCC कमांड देता है जिसका उपयोग विभिन्न प्रकार के SQL सर्वर व्यवस्थापक कार्यों को चलाने के लिए किया जा सकता है। इन गैर-दस्तावेज आदेशों में से एक DBCC पेज कमांड है, जिसका उपयोग डेटाबेस डेटा की सामग्री को पढ़ने और ऑनलाइन फ़ाइलों को लॉग करने के लिए किया जा सकता है। इसलिए डेटाबेस लॉग फ़ाइल की सामग्री को देखने के लिए, आपको डेटाबेस का नाम और लेनदेन लॉग फ़ाइल की आईडी देनी होगी। लेन-देन लॉग फ़ाइल की आईडी नीचे दी गई क्वेरी से पुनर्प्राप्त की जा सकती है।

SQL सर्वर ट्रांजेक्शन लॉग से डेटा पुनर्प्राप्त करने के लिए मैन्युअल तरीके की सीमाएं

  1. प्रदर्शन करना मुश्किल है।
  2. मजबूत तकनीकी ज्ञान की आवश्यकता है।
  3. डेटा हानि का उच्च जोखिम।

विशेषज्ञ समाधान SQL सर्वर लेनदेन लॉग फ़ाइल से डेटा पुनर्प्राप्त करें

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

SysTools SQL लॉग फ़ाइल रीडर उपकरण, जिसका उपयोग आसानी से ऑनलाइन SQL लेनदेन लॉग फ़ाइल की सामग्री को पढ़ने के लिए किया जा सकता है। इस सॉफ़्टवेयर का उपयोग करके उपयोगकर्ता SQL सर्वर ट्रांज़ैक्शनल लॉग फ़ाइलों को आसानी से पढ़ और विश्लेषण कर सकता है INSERT / UPDATE / DELETE संचालन। यह एंटरप्राइज-ग्रेड स्तर का पेशेवर एप्लिकेशन ऑफलाइन और ऑनलाइन डेटाबेस वातावरण दोनों पर काम कर सकता है। साथ ही, यह एप्लिकेशन चुनिंदा ट्रांजेक्शनल लॉग फ़ाइल को निर्यात करने के लिए डायनेमिक फ़िल्टर विकल्प प्रदान करता है। यह सॉफ़्टवेयर SQL सर्वर 2019 संस्करण का समर्थन करता है।

SQL सर्वर लेनदेन लॉग से डेटा पुनर्प्राप्त करने के चरण

  1. एसक्यूएल लॉग एनालाइजर को डाउनलोड और इंस्टॉल करें।

2. अब डेटाबेस विकल्प चुनें

3. SQL सर्वर ट्रांजेक्शनल लॉग फ़ाइल डेटा का पूर्वावलोकन करें।

4. लॉग फ़ाइल डेटा निर्यात करने के लिए निर्यात बटन पर क्लिक करें।

निष्कर्ष

इस तथ्य के बावजूद कि मैनुअल तकनीक 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. SQL सर्वर लॉगिन के लिए पासवर्ड बदलें

  2. पता करें कि SQL सर्वर (T-SQL) में ईमेल भेजने में विफल क्यों है

  3. SQL सर्वर:तालिका मेटा-डेटा निकालें (विवरण, फ़ील्ड और उनके डेटा प्रकार)

  4. SQL सर्वर पर संग्रहीत कार्यविधि का अनुसूचित रन

  5. एंटिटी फ्रेमवर्क का उपयोग करके, मैं पढ़ने पर तालिका को कैसे लॉक कर सकता हूं?