Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> डेटाबेस

MSSQL सर्वर में ट्रंकेट और डिलीट ऑपरेशंस को ऑडिट कैसे करें

यह ब्लॉग MSSQL सर्वर पर टेबल्स से डेटा को ट्रंकेट करने और हटाने के लिए जिम्मेदार यूजर को निर्धारित करने के चरणों पर चर्चा करता है, और जिम्मेदार इकाई की पहचान करता है।

उदाहरण के लिए: टेबल कब ट्रंकेट की गई थी, और टेबल से डेटा कब हटाया गया था? किसने टेबल को ट्रंकेट किया और टेबल से डेटा हटाया?

यह जानकारी एकत्र करने का कारण

यह देखने के लिए है कि क्या किसी ने जानबूझकर या दुर्घटना से डेटा हटाया, ताकि हम व्यक्ति को ट्रैक कर सकें और निवारक कार्रवाई कर सकें। हमें ग्राहकों से इस जानकारी के लिए कुछ अनुरोध प्राप्त होते हैं। जब हमें डेटा पर्ज ऑपरेशन का सटीक समय पता होता है तो हम लॉग बैकअप ऑपरेशन के दौरान स्टॉप एट क्लॉज के साथ डेटा को आसानी से पुनर्प्राप्त कर सकते हैं।

समस्या का सारांश

निम्नलिखित अनुभाग GitOps के लिए चार प्रमुख सिद्धांतों का वर्णन करते हैं:

5 जनवरी, 2020 को शाम 5 बजे और 7 बजे के बीच, "dump truncate" टेबल को ट्रंकेट किया गया था और "truncate test" DB से "dump delete" टेबल से डेटा हटा दिया गया था। संभावित प्रश्न जिन्हें संबोधित करने की आवश्यकता है उनमें शामिल हैं:

  • आपको यह पता लगाने की आवश्यकता है कि समस्या क्या है।
  • "dump_delete" टेबल से डेटा किसने हटाया?
  • "dump delete" टेबल से कितनी पंक्तियाँ हटाई गईं?
  • "dump_truncate" टेबल को किसने ट्रंकेट किया?
  • ये टेबल्स कब ट्रंकेट और डिलीट की गईं?
  • सर्वर पर, वर्तमान बैकअप शेड्यूल इस प्रकार है:
  • हर रविवार को फुल बैकअप लिए जाते हैं।
  • हर दिन दोपहर 1 बजे, डिफ बैकअप
  • लॉग बैकअप हर 15 मिनट में उत्पन्न होते हैं।

पूर्वापेक्षाएँ:

  • DB फुल रिकवरी मोड में होना चाहिए।
  • फुल, डिफ और लॉग बैकअप उपलब्ध होने चाहिए।

उच्च स्तर पर दृष्टिकोण:

  1. पहचानें कि कौन सा लॉग बैकअप डिलीट और ट्रंकेट ऑपरेशंस रखता है।
  2. लॉग बैकअप का उपयोग करके ट्रंकेट और डिलीट ऑपरेशंस के विवरण की पहचान करें।

पहचानें कि कौन सा लॉग बैकअप डिलीट और ट्रंकेट ऑपरेशंस रखता है:

नोट: हमने ये चरण DB की एक नई कॉपी बनाकर किए।

  1. स्टैंडबाय मोड के साथ 2 जनवरी रविवार फुल बैकअप को पुनर्स्थापित करें।

  2. स्टैंडबाय मोड के साथ 5 जनवरी डिफ बैकअप को पुनर्स्थापित करें

  3. स्टैंडबाय मोड के साथ लॉग बैकअप को पुनर्स्थापित करें। प्रत्येक लॉग रिस्टोर के बाद टेबल काउंट चेक करें ताकि यह देखा जा सके कि कौन सा लॉग बैकअप ट्रंकेट और डिलीट ऑपरेशन लॉग्स रखता है।

जब हमने शाम 6 बजे से लॉग बैकअप को पुनर्स्थापित किया, तो "dump truncate" टेबल खाली थी, और "dump delete" टेबल से एंट्रीज गायब थीं। नतीजतन, यह दर्शाता है:

शाम 5:45 बजे और 6 बजे के बीच, "dump truncate" टेबल को ट्रंकेट किया गया था, और "dump delete" टेबल से डेटा उसी समय मिटा दिया गया था।

आपको निम्नलिखित रिस्टोर कमांड चलाने की आवश्यकता है:

लॉग बैकअप का उपयोग करके ट्रंकेट और डिलीट ऑपरेशंस के विवरण की पहचान करें:

चरण 1: शाम 5:45 और 6 बजे के बीच हुई सभी ट्रंकेट और डिलीट ऑपरेशंस के लिए ट्रांजैक्शन आईडी एकत्र करें।

क्वेरी:

हमने पाया कि दो ऑपरेशंस, डिलीट और ट्रंकेट, शाम 5:50 बजे निष्पादित किए गए थे, और ये ऑपरेशंस लॉगिन RP Dev द्वारा किए गए थे।

चरण 2: उन टेबल नामों को ढूंढें जो ट्रांजैक्शन आईडी से जुड़े हैं।

डिलीट ऑपरेशन पर जानकारी प्राप्त करने के लिए, नीचे दिए गए चरणों का पालन करें:

I) डिलीट ऑपरेशन की ऑब्जेक्ट आईडी और पार्टीशन आईडी निर्धारित करें।

इस आउटपुट से, हम निम्नलिखित जानकारी निकाल सकते हैं: विवरण और ट्रांजैक्शन नाम कॉलम: डिलीट ऑपरेशन किया गया था

  • शुरू समय: डिलीट ऑपरेशन 2022/01/05 17:50:22:493 पर शुरू हुआ
  • लॉगिन_नाम: RP_DEV ने डिलीट ऑपरेशन चलाया था।
  • लॉक जानकारी: "HoBt" उपसर्ग से शुरू होने वाली प्रत्येक पंक्ति एक पंक्ति हटाने का प्रतिनिधित्व करती है, कुल 7 पंक्तियों के लिए।
  • ऑब्जेक्ट आईडी उस टेबल से जुड़ी हुई है जिससे डेटा हटाया गया था।
  • पार्टीशन आईडी: उस ऑब्जेक्ट का पार्टीशन आईडी जहां से डेटा हटाया गया था

II) एक टेबल का पता लगाएं जिसमें ऑब्जेक्ट आईडी और पार्टीशन आईडी हो।

क्वेरी:

अब हम यह निष्कर्ष निकाल सकते हैं कि "dump delete" से डेटा RP DEV यूजर द्वारा शाम 5:50 बजे ट्रांजैक्शन आईडी '0000:00016a96' के तहत हटाया गया था और कुल 7 पंक्तियाँ हटाई गई थीं।

ट्रंकेट ऑपरेशन पर जानकारी प्राप्त करने के लिए, नीचे दिए गए चरणों का पालन करें:

I) ट्रंकेट ऑपरेशन की ऑब्जेक्ट आईडी और पार्टीशन आईडी निर्धारित करें।

आउटपुट:

अब हम यह निष्कर्ष निकाल सकते हैं कि "dump delete" से डेटा RP DEV यूजर द्वारा शाम 5:50 बजे ट्रांजैक्शन आईडी '0000:00016a96' के तहत हटाया गया था और कुल 7 पंक्तियाँ हटाई गई थीं।

ट्रंकेट ऑपरेशन पर जानकारी प्राप्त करने के लिए, नीचे दिए गए चरणों का पालन करें:

I) ट्रंकेट ऑपरेशन की ऑब्जेक्ट आईडी और पार्टीशन आईडी निर्धारित करें।

क्वेरी:

आउटपुट

ट्रंकेट ऑपरेशन का आउटपुट डिलीट ऑपरेशन से थोड़ा अलग होता है।

पार्टीशन आईडी कॉलम: यह सही पार्टीशन आईडी प्रदर्शित नहीं कर रहा है। आप इस जानकारी को विवरण कॉलम में पा सकते हैं। पार्टीशन आईडी हाइलाइटेड है। पार्टीशन आईडी हैं 72057594043564032 और 72057594043629568

लॉक विवरण: लॉक विवरण में हमेशा SCH_M_OBJECT row सही ऑब्जेक्ट आईडी दिखाता है। ऑब्जेक्ट आईडी है: 885578193

एक टेबल का पता लगाएं जिसमें ऑब्जेक्ट आईडी और पार्टीशन आईडी हो

क्वेरी:

आउटपुट

अब हम यह स्थापित कर सकते हैं कि "dump truncate" से डेटा शाम 5:50 बजे RP_DEV यूजर द्वारा ट्रांजैक्शन आईडी '0000:00016a95' के तहत ट्रंकेट किया गया था।

निष्कर्ष

जब ऑडिटिंग पहले से सक्षम नहीं है तो डेटा पर ट्रंकेट और डिलीट ऑपरेशन करने वाले को जानना उपयोगी होता है ताकि ऐसा दोबारा होने से रोका जा सके। डिलीट ऑपरेशन के मामले में, व्यवसाय को पता चलेगा कि कितनी पंक्तियाँ हटाई गईं। रिकवरी के लिए सटीक समय होना डेटा को पुनर्प्राप्त करने के लिए बहुत मददगार होगा। इसके अलावा, ApexSQL Log और ApexSQL Recover जैसे थर्ड-पार्टी टूल्स का उपयोग भी डेटा को पुनर्प्राप्त करने के लिए किया जा सकता है। इन टूल्स के बारे में जानकारी के लिए इस लिंक को देखें:

हमारे विशेषज्ञ आपके अगली पीढ़ी के डेटा प्लेटफॉर्म यात्रा पर आपका मार्गदर्शन करें।

कोई भी टिप्पणी करने या प्रश्न पूछने के लिए फीडबैक टैब का उपयोग करें। आप हमारे साथ बातचीत भी शुरू कर सकते हैं।


  1. Oracle WebLogic Server 12c: प्रमुख विशेषताएँ और संवर्द्धन Oracle WebLogic Server 12c: प्रमुख विशेषताएँ और संवर्द्धन

    परिचय WebLogic Server एक एप्लिकेशन सर्वर है जो Java® EE 7 अनुपालक है और वितरित Java एप्लिकेशन को तैनात करने और चलाने के लिए उपयोग किया जाता है। यह लोकप्रिय Oracle उत्पाद सभी नवीनतम Oracle फ्यूजन उत्पादों में उपयोग किया जाता है जैसे सर्विस-ओरिएंटेड आर्किटेक्चर (SOA), Oracle Business Intelligence Ente

  1. Oracle Demantra और SPWA परिनियोजित करना: एक पूर्ण इंस्टॉलेशन गाइड Oracle Demantra और SPWA परिनियोजित करना: एक पूर्ण इंस्टॉलेशन गाइड

    परिचय Demantra® और उन्नत सप्लाई प्लानिंग वर्क एरिया (SPWA) Oracle® द्वारा प्रदान किए जाने वाले डिमांड मैनेजमेंट और सप्लाई चेन मैनेजमेंट टूल हैं। ये उत्पाद Oracle E-Business Suite (EBS) और Oracle Advanced Planning Suite (APS) (जो Oracle Advanced Supply Chain Planning (ASCP) का हिस्सा हैं) के साथ एकीक

  1. एक्सेल टेबल में रो और कॉलम प्रबंधन में महारत: इन्सर्ट और डिलीट गाइड एक्सेल टेबल में रो और कॉलम प्रबंधन में महारत: इन्सर्ट और डिलीट गाइड

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