เทียบเท่ากับSHOW DATABASES
คำสั่งMySQL หรือไม่
ไม่มีสิ่งนั้น คุณสามารถสืบค้นผู้ฟังบนเครื่อง ( lsnrctl status
) เพื่อดูว่ามีการลงทะเบียนบริการใดบ้าง แต่ไม่ได้แมปแบบหนึ่งต่อหนึ่งกับฐานข้อมูล (และอาจมีผู้ฟังหลายคนในเครื่องเดียวกัน) มิฉะนั้นเครื่องมือที่ใช้โดยทั่วไปจะเชื่อมต่อกับอินสแตนซ์ฐานข้อมูลหนึ่งอินสแตนซ์และอินสแตนซ์นั้นเป็นของฐานข้อมูลเดียว
หากคุณกำลังพูดถึง Oracle RAC clusters แต่ละอินสแตนซ์จะรู้จักเพื่อนของมัน (อินสแตนซ์อื่น ๆ ที่ให้บริการฐานข้อมูลเดียวกัน) และคุณสามารถค้นหาอินสแตนซ์อื่น ๆ ที่เริ่มต้นในปัจจุบันสำหรับฐานข้อมูลนั้นโดยใช้gv$instance
มุมมอง
คุณยังสามารถใช้crsctl
ยูทิลิตี้เพื่อแสดงรายการบริการ (รวมถึงฐานข้อมูล) ที่ลงทะเบียนในคลัสเตอร์และสถานะของพวกเขา
หากคุณกำลังพูดถึงซอฟต์แวร์การจัดกลุ่มของผู้จำหน่ายรายอื่นฉันค่อนข้างแน่ใจว่าพวกเขาทุกคนมีเครื่องมือจัดการทรัพยากรประเภทนี้เพื่อสอบถาม
หากคุณกำลังพูดถึงเครื่องจักรจำนวนมากไม่เลยไม่มีวิธีที่เชื่อถือได้ 100% ในการแจกแจงฐานข้อมูลทั้งหมดในเครือข่าย
ในการค้นหาฐานข้อมูลที่ใช้งาน (เช่นเริ่มต้น) ให้ค้นหา*_pmon_*
กระบวนการใน Unix (มีหนึ่งรายการต่อฐานข้อมูลอินสแตนซ์) และบริการ Oracle บน Windows
ในการค้นหาตำแหน่งการติดตั้งซอฟต์แวร์ฐานข้อมูล Oracle ให้ดูที่/etc/oratab
Unix นี่ควรจะมีทั้งหมดที่ORACLE_HOME
ติดตั้ง คุณสามารถดูในแต่ละของผู้ที่อยู่ใน$ORACLE_HOME/dbs
สำหรับspfile<SID>.ora
และ / หรือinit<SID>.ora
ไฟล์ - จะมีหนึ่งสำหรับแต่ละฐานข้อมูล
(ฉันเชื่อว่าคุณสามารถค้นหาข้อมูลที่เทียบเท่าได้oratab
ในคีย์รีจิสทรีของ Windows ด้านล่างHKEY_LOCAL_MACHINE\SOFTWARE\ORACLE
แต่ฉันไม่ทราบโครงสร้างของมัน)
แน่นอนตอนนี้ถ้าคุณลงทะเบียนฐานข้อมูลทั้งหมดของคุณกับเซิร์ฟเวอร์ OEM (Enterprise Manager) เมื่อคุณติดตั้งคุณสามารถค้นหารายการทั้งหมดได้ - แต่ฉันเดาว่าถ้าคุณถามว่าไม่ใช่กรณี