2017-02-16 56 views
-2

MS SQL Server 2008 R2でリンク・サーバーを介して複数のOracleデータベースにアクセスしています。ここ数日、参照されたエラーで失敗したプロシージャをストアしました。私はOracle DBAに連絡することを検討していますが、このエラーの原因をよりよく理解したかったのです。アカウントにあまりにも多くのクエリがサーバーにアクセスしている、または一般的に(私と他のユーザー)が多すぎますか?これは1000人のユーザーがアクセスする非常に大きな企業データベースです。ORA-02391:同時SESSIONS_PER_USER制限を超えました。問題

主な目標は、何が起こっているのかについての知識を持ってOracle DBAと話すことです(つまり、私はこれを解決する立場にないと思います)。アドバイスをいただければ幸いです。

答えて

0

それはあなたがそう

ALTER PROFILE <profile name> LIMIT SESSIONS_PER_USER <number>; 

または

ALTER PROFILE <profile name> LIMIT SESSIONS_PER_USER UNLIMITED; 
+0

これはOracleインスタンスで実行する必要がありますが、正しいですか?私の研究ではそうしたように見えましたが、SQL Management Studioで試してみるとうまくいかなかったのです。それで、個々のユーザー(つまり、私またはすべての個人)のユーザー1人あたりのセッション数が最大であること、またはユーザーのグループに設定があり、自分が所属するグループを増やす必要があると推測しています。 – chemnteach

+0

@chemnteachこれはOracle側で実行されます。プロファイルには複数のユーザーを割り当てることができます。これらのユーザーは次の方法で確認できます。dba_usersからのユーザー名の選択ここで、profile = 'PROFILENAME'; –

0

を使用して、それを変更することができます

SELECT * FROM DBA_PROFILES WHERE RESOURCE_NAME = 'SESSIONS_PER_USER'; 

を設定するプロファイルだ、私は人々のために、この上でループを閉じるために役に立つかもしれないと思いましたOracleと話すためにMS SQLを使用するユーザー。私が見つけたのは、私のアカウントにストアドプロシージャがハングしていて、それを殺したとき、オラクルは私がそれを殺したことを認識しなかったということでした。このような事態が数回起こった後、私の目に見えるよりも多くのインスタンスがOracleデータベースにアクセスしているように見える可能性がありました。 Oracle DBAがこれらのジョブをリリースすると、すべて正常だった。

関連する問題