एक उत्पादन वातावरण में टेम्पपड को सिकोड़ने के लिए सबसे अच्छा अभ्यास


24

SQL Server 2008 में अस्थाई db सिकुड़ते समय उपयोग करने के लिए सबसे अच्छा अभ्यास क्या है?

क्या निम्नलिखित का उपयोग करना जोखिम भरा है?

use tempdb
GO

DBCC FREEPROCCACHE -- clean cache
DBCC DROPCLEANBUFFERS -- clean buffers
DBCC FREESYSTEMCACHE ('ALL') -- clean system cache
DBCC FREESESSIONCACHE -- clean session cache
DBCC SHRINKDATABASE(tempdb, 10); -- shrink tempdb
dbcc shrinkfile ('tempdev') -- shrink db file
dbcc shrinkfile ('templog') -- shrink log file
GO

-- report the new file sizes
SELECT name, size
FROM sys.master_files
WHERE database_id = DB_ID(N'tempdb');
GO

सबसे अच्छा अभ्यास यह है कि इसे विकसित करने के लिए क्या काम करना है, और उस पते को। यदि आप इसे सिकोड़ लेते हैं तो बस फिर से बढ़ना होता है और इसमें समय लगता है और IO
Nick.McD मत्स्यांगना

हाँ मैं जानता हूँ। लेकिन जब मुझे करना है, तो यह देर से सक्रिय होने का कारण है :) क्या यह सबसे अच्छा समाधान है?

क्षमा करें, मैं वहां आपकी मदद नहीं कर सकता।
निक.मेडमार्टी

जवाबों:


11

यह अस्थायी रूप से Tempdb के सामान्य उपयोग पर नज़र रखने और तदनुसार आकार निर्धारित करने के लिए एक सर्वोत्तम अभ्यास है। यदि यह एक बंद मामला है जहां Tempdb इस तरह के आकार और इसके PROD env तक बढ़ गया है, तो मैं साप्ताहिक रखरखाव के दौरान SQL सर्वर सेवाएँ पुनः आरंभ करूंगा। Tempdb के बाद अपने कॉन्फ़िगर आकार में वापस जाएगा।

फ़ाइल को सिकोड़ना तब तक ठीक है जब तक कि Tempdb का उपयोग नहीं किया जा रहा है, अन्यथा मौजूदा लेनदेन अवरुद्ध और गतिरोध के कारण प्रदर्शन के दृष्टिकोण से प्रभावित हो सकते हैं।

सफाई प्रक्रिया कैश, बफ़र कैश आदि का डेटाबेस प्रदर्शन पर नकारात्मक प्रभाव पड़ेगा जब तक कि वे फिर से नहीं बनाए जाते हैं। मैं PROD पर ऐसा नहीं करूंगा।

उम्मीद है की वो मदद करदे!


देवी इनपुट के लिए धन्यवाद। क्या tempdb में प्रक्रियाओं के लिए sp_who के साथ जांच करना पर्याप्त है?

1
मुझे नहीं लगता कि यह पता लगाने का एक विश्वसनीय तरीका है कि क्या अस्थायी डीबी का उपयोग किया जा रहा है। मुझे लगता है कि यह केवल तभी दिखाई देगा जब कोई व्यक्ति सीधे SSMS में सीधे अस्थायी तालिका बना रहा हो। लेकिन अगर मेमोरी स्पिल आदि के कारण क्वेरी ऑपरेशन के परिणामस्वरूप ऐसा ही किया जा रहा है, तो यह sp_who2 में दिखाई नहीं देगा। यह प्रश्न एक अलग धागा होगा। कृपया इसे बनाएं क्योंकि यह एक अलग चर्चा है। यदि पिछले उत्तर ने आपको उत्तर के रूप में चिह्नित करने में मदद की है। वह इसी तरह की स्थिति के साथ दूसरों की मदद करेगा।
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.