Saya ingin memeriksa SID dan nama database saat ini.
Saya menggunakan kueri berikut untuk memeriksa oracle SID
select instance from v$thread;
tetapi tabel atau tampilan tidak ada, kesalahan akan datang.
Saya menggunakan kueri berikut untuk memeriksa nama database saat ini
select name from v$database;
tetapi tabel atau tampilan tidak ada, kesalahan akan datang.
Ada ide untuk dua masalah di atas?
select sys_context('userenv','db_name') from dual;
untuk nama database dan sid sudah saya tambahkan di jawabannya. berharap ini memberi Anda apa yang Anda inginkanJika, seperti saya, tujuan Anda adalah mendapatkan host database dan SID untuk menghasilkan url Oracle JDBC, sebagai
perintah berikut akan membantu:
Perintah kueri Oracle untuk memeriksa SID (atau nama contoh):
Perintah kueri Oracle untuk memeriksa nama database (atau host server):
Att. Sergio Marcelo
sumber
Sekadar kelengkapan, Anda juga bisa menggunakan ORA_DATABASE_NAME.
Perlu diperhatikan bahwa tidak semua metode memberi Anda hasil yang sama:
sumber
Tampilan V $ sebagian besar adalah tampilan metrik sistem yang dinamis. Mereka digunakan untuk penyetelan kinerja, pemantauan sesi, dll. Jadi akses dibatasi untuk pengguna DBA secara default, itulah mengapa Anda mendapatkannya
ORA-00942
.Cara termudah untuk menemukan nama database adalah:
Tampilan ini diberikan kepada PUBLIK, jadi siapa pun dapat menanyakannya.
sumber
Ketik pada
sqlplus
prompt perintahMaka Anda akan melihat hasilnya pada command prompt
Di sini yang pertama "ORCL" adalah nama database, mungkin sistem Anda "XE" dan lainnya yang diberikan pada waktu download oracle.
sumber
Seperti yang telah disebutkan di atas,
adalah cara untuk pergi.
Anda tidak dapat meminta v $ database / v $ instance / v $ thread karena pengguna Anda tidak memiliki izin yang diperlukan. Anda dapat memberikannya (melalui akun DBA) dengan:
sumber