यह कैसे जांचें कि Oracle डेटाबेस है?


14

हमारे आवेदन के लिए हमारे पास Oracle डेटाबेस (URL, उपयोगकर्ता नाम, पासवर्ड) से जुड़ने के लिए एक विन्यास फाइल है।

आवेदन शुरू करने के लिए 2-5 मिनट लगते हैं। अगर डेटाबेस में कुछ गड़बड़ है तो मैं इसे लॉग में देखता हूं, लेकिन मुझे 2-5 मिनट इंतजार करना होगा। यह बहुत समय है।

तो मैं पता लगाना चाहते हैं जल्दी से और बस निर्धारित करने के लिए कि डेटाबेस सब ठीक है और ऑनलाइन एक तरह से।

क्या आपके पास कोई विचार है कि मैं इसे कैसे कर सकता हूं?

जवाबों:


17

यदि आप निम्नलिखित क्वेरी चलाते हैं:

SELECT INSTANCE_NAME, STATUS, DATABASE_STATUS FROM V$INSTANCE;

इसे वापस करना चाहिए:

INSTANCE_NAME    STATUS       DATABASE_STATUS
---------------- ------------ -----------------
YOUR_DBASE       OPEN         ACTIVE

12

ps -ef | grep pmon

PMON (प्रक्रिया मॉनिटर) प्रक्रिया अन्य सभी पृष्ठभूमि प्रक्रियाओं की जांच करती है। फिर आपको आगे की जांच के लिए अलर्ट लॉग देखना होगा।


4

पहली बात पहली: आपको चरण 2 के लिए डेटाबेस से जुड़ने के लिए उपयोगकर्ता नाम और पासवर्ड जानना होगा

  1. Oracle प्रक्रिया रन की जाँच करें:

    अन * x पर:

    ps -ef|grep pmon

    विंडोज पर:

    tasklist|findstr /i oracle

    अगर किसी भी मामले में कमांड आउटपुट देता है, यानी यदि आपके वातावरण में डेटाबेस चल रहा है, तो pmon / oracle प्रक्रिया चल रही है।

  2. जाओ ORACLE_HOME/binऔर भागो:

     ./sqlplus /nolog

    यदि लॉगिन करने के बाद आपको त्रुटियां मिलती हैं, तो डेटाबेस नहीं चलता है:

    SQL*Plus: Release 11.2.0.1.0 Production on Sat Feb 31 21:61:61 2014
    Copyright (c) 1982, 2014, Oracle.  All rights reserved.
    Enter user-name: oracle
    Enter password: 
    ERROR:
    ORA-01034: ORACLE not available
    ORA-27101: shared memory realm does not exist
    Linux-x86_64 Error: 2: No such file or directory
    Process ID: 0
    Session ID: 0 Serial number: 0
    

1
sqlplus की खिड़कियों पर शुरू sqlplus / nolog होगा
इगोर Vuković

3

आपको एक स्क्रिप्ट का उपयोग / लिखना चाहिए जो सर्वर से कनेक्ट होगा और देखेगा कि आपका डेटाबेस ऑनलाइन है या नहीं। यहां Oracle लोग मदद करेंगे। बस इसे बैच / शेल स्क्रिप्ट से निष्पादित करें ( SQL कमांड लाइन से रनिंग स्क्रिप्ट्स देखें) और इसे आउटपुट देखें। अगर आपका जवाब देने से सब कुछ ठीक है।

या सिर्फ SQL * प्लस क्लाइंट के साथ प्रयास करें।


0

डेटाबेस के साथ-साथ वास्तविक क्वेरी चलाना भी बुद्धिमानी हो सकती है। यह सिर्फ यह सुनिश्चित करता है कि आप कनेक्ट और क्वेरी दोनों कर सकते हैं। मैं इसे बहुत सरल और तेज़ बनाऊंगा, जैसे:

SELECT pk_column 
  FROM sometable
WHERE rownum <= 1

0

PMON सभी bg प्रक्रियाओं की जाँच करेगा

ps -ef|grep pmon

इसके अतिरिक्त, हम जाँच सकते हैं कि डेटाबेस चल रहा है या नहीं।

ps -ef|grep mydb

-1

सामान्य डेटाबेस स्थिति की जांच करने के लिए, मैं सुझाव देता हूं:

  1. जांचें कि क्या डेटाबेस प्रक्रियाएं चल रही हैं। उदाहरण के लिए, यूनिक्स शेल से, चल रहा है:

    $ ps -ef | grep pmon

    चल रहे डेटाबेस, स्टार्टअप समय, और जो Oracle उपयोगकर्ताओं को हर एक शुरू कर दिया दिखाएगा।

  2. जांचें कि क्या श्रोता उपयोग कर रहे हैं $ ps -ef | grep tnsऔर$ lsnrctl status LISTENER

  3. gv$resource_limitयदि डेटाबेस कुछ कॉन्फ़िगर सीमा तक पहुंच गया है, तो चयन करना दिखाएगा।

  4. यह जांचने के लिए कि क्या कोई डेटाबेस त्रुटियां थीं, आपको जांच करनी चाहिए alert.log

अधिक जानकारी के लिए मेरी ब्लॉग पोस्ट देखें ।

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