ओरेकल शटडाउन विधि


9

अपग्रेड या पैच करने से पहले एक डेटाबेस को बंद करना कई तरीकों से किया जा सकता है।

shutdown immediate;

या

shutdown abort;
startup restrict;
shutdown immediate;

या

shutdown abort;
startup restrict;
shutdown;

या

alter system checkpoint;
shutdown abort;
startup restrict;
shutdown immediate;

बेशक अन्य विकल्प भी हैं। किसे प्राथमिकता दी जानी चाहिए और क्यों?

जवाबों:


12

रखरखाव (या कोल्ड बैकअप) के लिए शट डाउन करते समय उद्देश्य यह है कि डेटाबेस को एक सुसंगत स्थिति में छोड़ दिया जाता है जिसमें स्टार्टअप पर रोलबैक / रिकवरी की आवश्यकता नहीं होती है।

3 एसक्यूएल * प्लस shutdownकमांड हैं जो इसे सिद्धांत रूप में प्राप्त करते हैं, जो सभी तुरंत नए सत्रों को उदाहरण से कनेक्ट करने से रोकते हैं :

  1. shutdown normalया बस shutdown: सभी सत्रों को डिस्कनेक्ट करने के लिए प्रतीक्षा करता है। यह मोड शायद ही कभी व्यवहार में उपयोग किया जाता है क्योंकि यह अच्छी तरह से व्यवहार किए गए ग्राहकों पर निर्भर है जो कनेक्शन को खुला नहीं छोड़ते हैं। यह एकमात्र ऐसा shutdownतरीका हुआ करता था जो चल रहे लेनदेन को रद्द नहीं करता था।
  2. shutdown transactional: सत्रों को एक बार डिस्कनेक्ट करने से लेन-देन पूर्ण हो जाता है, नए लेनदेन को शुरू होने से रोकता है।
  3. shutdown immediate: सभी सत्रों को डिस्कनेक्ट करता है और बंद करने से पहले बाधित लेनदेन को वापस करता है। ध्यान दें कि डिस्कनेक्ट तत्काल हैं, लेकिन बंद नहीं हो सकता है क्योंकि किसी भी बाधित लेनदेन को वापस रोल करने में समय लग सकता है।

का चौथा मोड shutdownहै shutdown abort। यह पावर कॉर्ड को खींचने जैसा है - उदाहरण अब बिना किसी सफाई के बंद हो जाता है । आप आमतौर पर डेटाबेस को बाद में फिर से लाना चाहते हैं और अपने उदाहरण में तुरंत बाद में साफ-सफाई बंद कर देते हैं। कॉन्सेप्ट गाइड कहता है :

यह मोड आपातकालीन स्थितियों के लिए अभिप्रेत है, जैसे कि जब कोई अन्य शटडाउन सफल नहीं होता है।

सभी उदाहरण आप दे एक चौकी प्रदर्शन के भाग के रूप shutdown [normal]या shutdown immediateतो स्पष्ट checkpointing शायद है समय वसूली के लिए आवश्यक को कम

सामान्य सलाह:

  • उपयोग न करें shutdown normal
  • shutdown transactional केवल शटडाउन के लिए उपयोग करें , जब आप रद्द किए गए लेन-देन को कम करना चाहते हैं (केवल इसलिए कि इस तरह के शटडाउन को डेटाबेस को बंद करने की गारंटी नहीं दी जाती है अगर समय समाप्त हो जाता है)।
  • shutdown immediateअनअटेंडेड शटडाउन के लिए उपयोग करें या जब आप वर्तमान में चल रहे लेनदेन के बारे में परवाह नहीं करते हैं।
  • shutdown abortजब तक आपके पास (प्लस स्टार्टअप / शटडाउन) का उपयोग न करें - यह ओरेकल के पहले के संस्करणों में अधिक सामान्य था कि यह आज है। अन्य स्थितियों में (पैच / अपग्रेड नहीं), अगर आपको डाउनटाइम कम करना है तो यह मोड उपयुक्त हो सकता है।

क्या आप इसके नुकसान पर कोई और विवरण प्रदान कर सकते हैं shutdown abort? प्रतिपक्षी बजाना, अगर हम ओरेकल पर भरोसा कर सकते हैं, जब बिजली खींची गई है, तो हमें सही तरीके से पुनर्प्राप्त करना चाहिए, क्या हमें इस पर भरोसा नहीं करना चाहिए shutdown abort, खासकर अगर यह तेज है और हम तुरंत ए startup restrictऔर ए करने जा रहे हैं shutdown immediate? दूसरे शब्दों में, क्या ऐसे तथ्य हैं जो हम ओरेकल की सख्त चेतावनी के खिलाफ देख सकते हैं shutdown abort?
लीघ रिफ़ेल

@Leigh - एकमात्र विशिष्ट खतरा जिसके बारे में मैं जानता हूं कि वह ऑनलाइन लॉग्स के आकस्मिक बैकअप से shutdown abortसंबंधित है लेकिन यह केवल उस स्थिति में है जब आप बाद में एक साफ शटडाउन नहीं करते हैं। यदि आप जानते हैं कि आप क्या कर रहे हैं तो मुझे लगता है कि पूरी तरह से सुरक्षित माना जा सकता है - और मुझे यकीन नहीं है कि अगर ओरेकल की स्थिति "गंभीर चेतावनी" के रूप में गिना जाता है; ;-)shutdown abort
जैक कहते हैं कि topanswers.xyz

3

मैं शटडाउन गर्भपात विधि को पसंद करता हूं क्योंकि यह एक डेटाबेस को नीचे लाने का सबसे तेज़ तरीका है। कुछ ऑपरेशन हैं जो शटडाउन गर्भपात के बाद नहीं किए जा सकते हैं, जैसे

  • controlfile डेटाबेस को controlfile रीसेटलॉग बनाएँ (डेटाबेस का नाम बदलने के लिए, तेफ़ नाम बदलने के लिए तेफ़ाइल का नाम बदलने के लिए) बनाएँ
  • dbms_backup_restore से प्रक्रिया के साथ dbid बदलें (यह dbid बदलने के लिए 8i में एकमात्र तरीका था)

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

9i के बाद से डेटाबेस का नाम बदलने या dbid का परिवर्तन dbnewid उपयोगिता के साथ किया जा सकता है । जहां तक ​​मुझे पता है कि उपयोगिता की जाँच डेटाबेस सही ढंग से बंद होने की थी। डेटाफाइल, टेम्फाइल और लॉगफाइल्स का नाम बदलकर उचित एसक्यूएल बयानों को निष्पादित करके किया जा सकता है, बिना पाठ्यक्रम के कंट्रोलफाइल को फिर से बनाए।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.