Oracle では、「v$session」を指定した select ステートメントを使用して、データベース内のセッション数をクエリできます。「v$session」ビューには、データベース インスタンス内のすべてのセッション レコードと構文が含まれます。は「v$session からカウント (*) を選択します;」です。
このチュートリアルの動作環境: Windows 10 システム、Oracle 11g バージョン、Dell G3 コンピューター。
システムの現在のセッションの接続数を表示するための構文は次のとおりです:
select count(*) from v$session;
現在の Oracle ノード上のアクティブなセッションの数を表示:
データベース内のセッションの最大数を変更します:
alter system set processes=500 scope=spfile (在命令模式下执行)
現在のデータベースの最大セッション制限を表示します:
show parameters processes;
DBLINK によって開くことができる接続の最大数を表示します現在のデータベース:
show parameters open_links;
拡張知識:
セッション ( Session ) は、通信の開始から通信の終了までの通信当事者間のコンテキスト (Context) です。 。このコンテキストはサーバー側にあるメモリの一部であり、今回接続したクライアント マシン、使用されたアプリケーション、ログインしたユーザー、その他の情報が記録されます。
Oracle を通じて現在のデータベースを表示できます。 view v$session すべてのセッション情報。このビューにはセッション ステータスを示すステータス列があり、Oracle 公式ドキュメントではこの列を次のように定義しています。
STATUS VARCHAR2(8) Status of the session: ACTIVE - Session currently executing SQL INACTIVE KILLED - Session marked to be killed CACHED - Session temporarily cached for use by Oracle*XA SNIPED - Session inactive, waiting on the client
表示されるのは、ACTIVE、INACTIVE、および KILLED
1. アクティブなセッションはアクティブ状態にあり、現在のセッションは SQL ステートメントを実行しています
2. 非アクティブなセッションは非アクティブ状態にあり、SQL ステートメントは実行されていますが、何らかの理由で、セッションとバックグラウンド プロセスが解放されません。sqlplus を終了してログアウトするか、同様の plsql 開発者ツールから直接終了すると、セッションを非アクティブ状態にするのではなく、セッションを直接閉じます。以下は sqlplus を取得します。コマンドの例
[oracle@oracle11g ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.1.0 Production on Thu May 23 23:09:30 2013 Copyright (c) 1982, 2009, Oracle. All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> select count(*) from v$process; COUNT(*) ---------- 30 SQL>
推奨チュートリアル: "OracleVideoTutorial》
以上がOracle でセッション数をクエリする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。