Oracle限制某個使用者的串連數及PROFILE介紹

來源:互聯網
上載者:User

Oracle限制某個使用者的串連數及PROFILE介紹

今天有同事打電話來,說要限制一個使用者的連結數,可以通過Oracle的PROFILE檔案來實現

1.    查看resource_limit參數:
 
SQL> show parameter resource_limit
 
如果為FALSE,設定 RESOURCE_LIMIT參數為TRUE,即開啟資源限制:
 
alter system set resource_limit =TRUE;
 
該改變對密碼資源無效,密碼資源總是可用的
 
2.    建立PROFILE :
 
SQL>create  profile sess limit sessions_per_user 20; --最大串連數限制為20
 
3.    將PROFILE指定給使用者:
 
SQL>alter user ydgwb profile sess;

Linux-6-64下安裝Oracle 12C筆記

在CentOS 6.4下安裝Oracle 11gR2(x64)

Oracle 11gR2 在VMWare虛擬機器中安裝步驟

Debian 下 安裝 Oracle 11g XE R2
 
 
附:PROFILE介紹
 
ORACLE的PROFILE檔案是限制資料庫使用者使用資源的一種手段。
 
如:控制session或sql能使用的CPU、控制使用者的密碼管理原則等。資料庫建立後,系統則存在名為DEFAULT的預設PROFILE,若不做特殊指定,建立使用者時使用者預設使用的PROFILE就是DEFAULT。
 
1.    查看視圖dba_profiles可找出資料庫中有哪些PROFILE。
 
SQL> select distinct profile from dba_profiles;
 
2.    查看所有的PROFILE
 SQL> select * from dba_profiles order by PROFILE;
 
PROFILE RESOURCE_NAME RESOURCE LIMIT
 
-------------------- ------------------------------ -------- ----------
 
DEFAULT COMPOSITE_LIMIT KERNEL UNLIMITED
 
DEFAULT PASSWORD_LOCK_TIME PASSWORD 1
 
DEFAULT PASSWORD_VERIFY_FUNCTION PASSWORD NULL
 
DEFAULT PASSWORD_REUSE_MAX PASSWORD UNLIMITED
 
DEFAULT PASSWORD_REUSE_TIME PASSWORD UNLIMITED
 
DEFAULT PASSWORD_LIFE_TIME PASSWORD 180
 
DEFAULT FAILED_LOGIN_ATTEMPTS PASSWORD UNLIMITED
 
DEFAULT PRIVATE_SGA KERNEL UNLIMITED
 
DEFAULT CONNECT_TIME KERNEL UNLIMITED
 
DEFAULT IDLE_TIME KERNEL UNLIMITED
 
DEFAULT LOGICAL_READS_PER_CALL KERNEL UNLIMITED
 
DEFAULT LOGICAL_READS_PER_SESSION KERNEL UNLIMITED
 
DEFAULT CPU_PER_CALL KERNEL UNLIMITED
 
DEFAULT CPU_PER_SESSION KERNEL UNLIMITED
 
DEFAULT SESSIONS_PER_USER KERNEL UNLIMITED
 
DEFAULT PASSWORD_GRACE_TIME PASSWORD 7
 
參數解釋
 
1、對資料庫資源做限制
 
{ { SESSIONS_PER_USER 每個使用者名稱所允許的並行會話數
 
| CPU_PER_SESSION 一個會話一共可以使用的CPU時間,單位是百分之一秒
 
| CPU_PER_CALL 一次SQL調用(解析、執行和擷取)允許使用的CPU時間
 
| CONNECT_TIME 限制會話連線時間,單位是分鐘
 
| IDLE_TIME 允許空閑會話的時間,單位是分鐘
 
| LOGICAL_READS_PER_SESSION 限制會話對資料區塊的讀取,單位是塊
 
| LOGICAL_READS_PER_CALL 限制SQL調用對資料區塊的讀取,單位是塊
 
| COMPOSITE_LIMIT “組合打法”
 
} { integer | UNLIMITED | DEFAULT }
 
| PRIVATE_SGA 限制會話在SGA中Shared Pool中私人空間的分配 { size_clause | UNLIMITED | DEFAULT}
 
}
 
2、對密碼做限制
 
{ { FAILED_LOGIN_ATTEMPTS 帳戶被鎖定之前可以錯誤嘗試的次數
 
| PASSWORD_LIFE_TIME 密碼可以被使用的天數,單位是天,預設值180天
 
| PASSWORD_REUSE_TIME 密碼可重用的間隔時間(結合PASSWORD_REUSE_MAX)
 
| PASSWORD_REUSE_MAX 密碼的最大改變次數(結合PASSWORD_REUSE_TIME)
 
| PASSWORD_LOCK_TIME 超過錯誤嘗試次數後,使用者被鎖定的天數,預設1天
 
| PASSWORD_GRACE_TIME 當密碼到期之後還有多少天可以使用原密碼
 
} { expr | UNLIMITED | DEFAULT }
 
| PASSWORD_VERIFY_FUNCTION { function | NULL | DEFAULT }
 
}
 
修改profile:alter profile [資源檔名] limit [資源名] unlimited;
 
如:alter profile default limit failed_login_attempts 100;
 
刪除PROFILE:drop profile [資源檔名] [CASCADE] ;
 
若建立的PROFILE已經授權給了某個使用者,使用CASCADE級聯收回相應的限制,收回限制資訊後將以系統預設的PROFILE對該使用者進行限制。
 
設定PROFILE參數的生效時間
 
1、使用者所有擁有的PROFILE中有關密碼的限制立即生效,不受限制。從這個可看出Oracle對使用者密碼的重視程度。
 
2、使用者所有擁有的PROFILE中有關資源的限制與resource_limit參數的設定有關,當為TRUE時生效,當為FALSE時(預設值)設定任何值都無效。
 
SQL> show parameter resource_limit
 
NAME TYPE VALUE
 
-------------------- ----------- -------
 
resource_limit boolean FALSE
 
以上PROFILE介紹部分內容摘自百度文庫

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.