it-swarm.asia

Bagaimana memeriksa apakah Database Oracle sudah habis?

Untuk aplikasi kami, kami memiliki file konfigurasi untuk menghubungkan ke database Oracle (URL, nama pengguna, kata sandi).

Aplikasi membutuhkan 2-5 menit untuk memulai. Jika ada sesuatu yang salah dengan database saya melihat ini dalam log, tetapi saya harus menunggu 2-5 menit. Ini banyak waktu.

Jadi saya ingin mencari tahu dengan cepat dan sederhana cara untuk menentukan bahwa database semuanya OK dan online.

Apakah Anda tahu bagaimana saya bisa melakukannya?

14
Eugene

Jika Anda menjalankan kueri berikut:

SELECT INSTANCE_NAME, STATUS, DATABASE_STATUS FROM V$INSTANCE;

Itu harus kembali:

INSTANCE_NAME    STATUS       DATABASE_STATUS
---------------- ------------ -----------------
YOUR_DBASE       OPEN         ACTIVE
17
Solego

ps -ef | grep pmon

Proses PMON (monitor proses) memeriksa semua proses latar belakang lainnya. Maka Anda harus memeriksa log peringatan untuk penyelidikan lebih lanjut.

12
ibre5041

Hal pertama yang pertama: Anda perlu mengetahui nama pengguna dan kata sandi untuk terhubung ke database untuk langkah 2

  1. Periksa proses Oracle berjalan:

    Aktif Un * x:

    ps -ef|grep pmon
    

    Di Windows:

    tasklist|findstr /i Oracle
    

    jika perintah dalam hal apa pun mengembalikan output yaitu jika proses pmon/Oracle berjalan di lingkungan Anda, database sedang berjalan.

  2. Pergi ke Oracle_HOME/bin dan lari:

     ./sqlplus /nolog
    

    Jika setelah login Anda mendapatkan kesalahan, maka database tidak berjalan:

    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
    
4
coz

Anda harus menggunakan/menulis skrip yang akan terhubung ke server dan melihat apakah database Anda online. Di sini orang-orang Oracle akan membantu. Cukup jalankan dari skrip batch/Shell (lihat Menjalankan Skrip Dari SQL Command Line ) dan lihat hasilnya. Jika semuanya baik-baik saja daripada jawaban Anda.

Atau coba saja dengan klien SQL * Plus.

3
Marian

Mungkin bijaksana untuk menjalankan kueri yang sebenarnya terhadap basis data juga. Ini hanya memastikan bahwa Anda dapat terhubung dan meminta. Saya akan membuatnya menjadi sesuatu yang sangat sederhana dan cepat, seperti:

SELECT pk_column 
  FROM sometable
WHERE rownum <= 1
0
Richard

PMON akan memeriksa semua proses bg

ps -ef|grep pmon

Selain itu, kita dapat memeriksa apakah database berjalan atau tidak.

ps -ef|grep mydb
0
user3818965