December 12, 2009
The following question appeared in one of the OTN forums a couple months ago:
http://forums.oracle.com/forums/thread.jspa?threadID=958849
I am new in this database field.
I have a small query that how can i find the number of database running on a particular host in windows environment by query?
There is no query in Oracle which will show you the database instances on a Windows server. That said, here is a portion (adaptation) of a WMI script from the book “Expert Oracle Practices: Oracle Database Administration from the Oak Table” which will do it for you as long as the database instance is started (even on a remote server if you have administrator privileges on the remote server):
Dim objWMIService
Dim strSQL
Dim strComputer
Dim colItems
Dim objItem
strSQL = "SELECT * FROM Win32_Process Where Name like 'Oracle%'"
strComputer = "." ' the . indicates the local computer
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\CIMV2")
Set colItems = objWMIService.ExecQuery(strSQL,"WQL",48)
For Each objItem in colItems
Wscript.Echo "Instance: " & objItem.CommandLine & vbCrLf
Next
To run the above script, save it as a text file with the extension .VBS. Open a Windows command prompt, and type cscript followed by the name of the script:
C:\> cscript c:\databases.vbs
Note that you must be an administrator on the remote computer (or a domain administrator) to remotely query the running processes on another Windows computer.

Recent Comments