Oracle Database'in nasıl çalıştığını nasıl kontrol edebilirim?


14

Uygulamamız için Oracle veritabanına (URL, kullanıcı adı, şifre) bağlanmak için bir yapılandırma dosyasına sahibiz.

Uygulamanın başlaması 2-5 dakika sürer. Veritabanı ile ilgili bir sorun varsa günlüklerde bunu görüyorum, ama 2-5 dakika beklemek zorundayım. Bu çok zaman.

Bu yüzden hızlı ve basit bir şekilde veritabanı tüm Tamam ve çevrimiçi olduğunu belirlemek için bir yol bulmak istiyorum .

Nasıl yapabileceğime dair bir fikrin var mı?

Yanıtlar:


17

Aşağıdaki sorguyu çalıştırırsanız:

SELECT INSTANCE_NAME, STATUS, DATABASE_STATUS FROM V$INSTANCE;

Geri dönmelidir:

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

12

ps -ef | grep pmon

PMON (süreç izleme) işlemi diğer tüm arka plan süreçlerini kontrol eder. O zaman daha fazla araştırma için uyarı günlüğünü kontrol etmelisiniz.


4

İlk önce: 2. adım için veritabanına bağlanmak için kullanıcı adını ve şifreyi bilmeniz gerekir

  1. Oracle işleminin çalışıp çalışmadığını kontrol edin:

    Un * x'de:

    ps -ef|grep pmon

    Windows'ta:

    tasklist|findstr /i oracle

    komut her durumda çıktı döndürürse, yani pmon / oracle işlemi ortamınızda çalışıyorsa veritabanı çalışıyor demektir.

  2. Git ORACLE_HOME/binve çalıştır:

     ./sqlplus /nolog

    Giriş yaptıktan sonra hata alırsanız, veritabanı çalışmaz:

    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'ın başlangıcında sqlplus / nolog olurdu
Igor Vuković

3

Sunucuya bağlanacak bir komut dosyası kullanmalı / yazmalı ve veritabanınızın çevrimiçi olup olmadığını görmelisiniz. İşte Oracle adamları yardım edecek. Bir toplu iş / kabuk komut dosyasından yürütün (bkz. Komut Dosyalarını SQL Komut Satırından Çalıştırma ) ve çıktısını görün. Eğer herşey yolundaysa cevabınız sizde.

Veya SQL * Plus istemcisi ile deneyin.


0

Veritabanına karşı da gerçek bir sorgu çalıştırmak akıllıca olabilir. Bu sadece bağlanıp sorgulayabilmenizi sağlar. Çok basit ve hızlı bir şey yapardım, örneğin:

SELECT pk_column 
  FROM sometable
WHERE rownum <= 1

0

PMON tüm bg süreçlerini kontrol edecek

ps -ef|grep pmon

Ayrıca, veritabanının çalışıp çalışmadığını kontrol edebiliriz.

ps -ef|grep mydb

-1

Genel veritabanı durumunu kontrol etmek için şunları öneririm:

  1. Veritabanı işlemlerinin çalışıp çalışmadığını kontrol edin. Örneğin, bir Unix kabuğundan aşağıdaki komutu çalıştırın:

    $ ps -ef | grep pmon

    çalışan veritabanlarını, başlangıç ​​zamanlarını ve Oracle kullanıcılarının her birini başlattıklarını gösterir.

  2. Dinleyicilerin şunu kullanarak çalışıp çalışmadığını kontrol edin $ ps -ef | grep tnsve$ lsnrctl status LISTENER

  3. Seçim gv$resource_limit, veritabanının yapılandırılmış bir sınıra ulaşıp ulaşmadığını gösterir.

  4. Herhangi bir veritabanı hatası olup olmadığını kontrol etmek için kontrol etmelisiniz alert.log.

Daha fazla bilgi için blog gönderime bakın .

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.