MSSQL बैकअप - मैं एक स्क्रिप्ट की जांच करने के लिख सकते हैं अगर डीबी का बैकअप लेने से पहले संशोधित किया गया है?

वोट
2

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

26/11/2012 को 17:29
का स्रोत उपयोगकर्ता
अन्य भाषाओं में...                            


2 जवाब

वोट
2

आप किसी भी सूचकांक को अंतिम परिवर्तन क्वेरी सकता है। यह, टेबल के बदलाव शामिल हैं के बाद से टेबल सूचकांक (क्लस्टर या ढेर) की एक विशेष फार्म के रूप में जमा हो जाती है:

select  max(last_user_update)
from    sys.dm_db_index_usage_stats ius
join    sys.databases db
on      ius.database_id = db.database_id
where   db.name = 'YourDbName'

ये आंकड़े एक सर्वर को पुनः आरंभ करने के बाद रीसेट कर रहे हैं। आप सर्वर को पुनः आरंभ समय के साथ पा सकते हैं:

select  create_date
from    sys.databases
where   database_id = 2 -- tempdb
26/11/2012 को 17:35
का स्रोत उपयोगकर्ता

वोट
0

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

तो फिर यह आसान है; एक अनुसूचित काम के रूप में बैकअप, एक प्रश्न किसी भी और सभी "अंतिम अद्यतन" क्षेत्रों की जाँच पर प्रतिपादित अगर वे पिछले बैकअप तारीख (जो आप भी त्वरित संदर्भ के लिए अपने स्कीमा में कहीं रख सकते हैं) की तुलना में नए हैं देखने के लिए निर्धारित किया है।

26/11/2012 को 17:37
का स्रोत उपयोगकर्ता

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more