您好,登錄后才能下訂單哦!
小編給大家分享一下Oracle中怎么保證用戶只有一個Session登錄,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
SQL> create profile one_session limit sessions_per_user 1;
SQL> create user test identified by test;
User created. www.2cto.com
SQL> grant connect,resource to test;
Grant succeeded.
SQL> alter user test profile one_session;
SQL> alter system set resource_limit=true;
sqlplus test/test
host sqlplus test/test
ERROR:
ORA-02391: exceeded simultaneous SESSIONS_PER_USER limit
但有個條件是如果是RAC, 則在其他instance還可以登錄。
--可以通過下面的語句查看修改后的 RESOURCE_LIMIT 中的value字段的值
SELECT * FROM v_$parameter a WHERE lower(a.NAME) LIKE LOWER('%resource_limit%') ;
--查看profile文件的內容
SELECT * FROM dba_profiles a WHERE lower(a.profile) = lower('one_session') ;
--撤銷以上的修改
SQL>alter system set resource_limit=false ;
SQL>alter user U1050 profile default ;
SQL>drop profile one_session ;
--以下是不創建profile,直接修改default profile進行用戶登錄限制
SQL>alter profile default limit SESSIONS_PER_USER 1 ;
SQL>alter system set resource_limit=true;
SQL>commit ;
--撤銷以上的修改
SQL>alter profile default limit SESSIONS_PER_USER unlimited ;
SQL>alter system set resource_limit=false;
SQL>commit ;
看完了這篇文章,相信你對“Oracle中怎么保證用戶只有一個Session登錄”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。