2

SQL を使用してサーバーに関する情報を取得する方法はありますか? Windowsサーバーを利用したOracleデータベースです。私はグーグルを検索しましたが、私が見つけたのは@@versionどれが機能しないかだけでした。ご協力いただきありがとうございます。

4

2 に答える 2

11

以下は、主要な情報取得ルーチンの適切なリストです。これがサーバー情報を取得する最良の方法であることを確認してください。

オラクル

バージョン: Oracle で使用する PL/SQL、TNS バージョン。

SELECT * FROM v$version;
-- Which version of oracle you are running.
SELECT * FROM v$version WHERE banner LIKE 'Oracle%';
-- Or, in more readable way.
SELECT * FROM product_component_version;

インスタンス: 現在のインスタンスの状態を表示します。

SELECT * FROM v$instance;
-- About license limits of the current instance.
SELECT * FROM v$license;

データベース: データベース名。

SELECT * FROM GLOBAL_NAME
--Db IP Address.
SELECT UTL_INADDR.get_host_address FROM dual
--Db Host Name.
SELECT UTL_INADDR.GET_HOST_NAME('above ip address') FROM dual

クライアント: クライアント IP アドレス。

SELECT SYS_CONTEXT('USERENV','IP_ADDRESS') FROM dual
--Db Host Name
SELECT SYS_CONTEXT('USERENV','TERMINAL') FROM dual
--Db Host Name with domain.
SELECT SYS_CONTEXT('USERENV','HOST') FROM dual
--Current Client session details who using DB.
SELECT * FROM v$session WHERE username = 'User/Schema name'
--To which DB user connected to.
SELECT SUBSTR(GLOBAL_NAME, 1, INSTR(GLOBAL_NAME,'.')-1) FROM GLOBAL_NAME

SQLサーバー

バージョン: 実行している SQL サーバーのバージョン。

SELECT @@VERSION
SELECT SERVERPROPERTY('productversion'), SERVERPROPERTY ('edition')
-- SERVERPROPERTY Returns property information about the server instance.

クライアント: クライアントの詳細 (IP アドレス、マシン名、使用しているインスタンス)。

SELECT con.client_net_address as IPAddress,
         sess.host_name as MachineName, sess.program_name as ApplicationName,
         login_name as LoginName
FROM sys.dm_exec_connections con
inner join sys.dm_exec_sessions sess
on con.session_ID=sess.session_ID
WHERE con.session_ID = @@SPID

詳細: http://msdn.microsoft.com/en-us/library/ms174396.aspx

于 2013-05-15T13:19:39.337 に答える