हटाने गतिविधियों जहां unt_uid रिक्त हैकैसे-एसक्यूएल सर्वर पर एक मेज से 8,500,000 रिकॉर्ड्स को हटाना
सबसे तेज़ तरीका होगा, लेकिन जब तक इस बयान समाप्त हो गया है कोई भी डेटाबेस/तालिका का उपयोग कर सकते तो यह एक नहीं- है चले जाओ।
मैंने काम करने के दौरान यह कार्य करने के लिए एक कर्सर को परिभाषित किया लेकिन वैसे भी उत्पादकता पर असर बड़ा है। तो इन रिकॉर्ड को कैसे हटाएं ताकि इस डेटाबेस के सामान्य उपयोग की गारंटी हो?
यह 32-बिट Win2003 पर SQL-2005 सर्वर है। दूसरा सवाल यह है कि आप इस नौकरी के लिए कब तक अनुमान लगाएंगे (6 घंटे या 60 घंटे)? (हाँ, मुझे पता है कि लोड पर निर्भर करता है लेकिन मान लें कि यह एक छोटा व्यापार वातावरण है)
इस संकेत के लिए धन्यवाद। मैं इसे एक कर्सर के साथ करूँगा जो शीर्ष 1000 का चयन करता है और इसे थोड़ी देर के साथ लपेटता है (चयन गिनती (*) ...)> 0. मुझे लगता है कि लेनदेन-लॉग एक और कहानी है: ऐसा करना संभव नहीं है लॉगिंग किए बिना हटाए जाने पर डेटाबेस का सामान्य उपयोग नियमित रूप से लॉग होता है? – Ice
@ice मुझे ऐसा नहीं लगता है। आप थोक अपडेट के लिए लॉग बंद कर सकते हैं लेकिन हटाए नहीं जा सकते हैं। – Keltex