您好,登錄后才能下訂單哦!
配置文件的功能:管理密碼、限制會話可占用的資源。Oracle建議使用資源管理器來限制資源管理。
1.語法:
創建配置文件:
CREATE PROFILE profile LIMIT { resource_parameters | password_parameters }...;
修改配置文件:
ALTER PROFILE profile LIMIT { resource_parameters | password_parameters }...;
刪除配置文件:
drop profile profile_name [cascade];
應用配置文件:
alter user user_name profile profile_name;
2.相關參數
1)管理口令:
failed_login_attempts:鎖定用戶前,口令可以連續輸入錯誤數。
password_lock_time:密碼輸錯錯誤導致賬戶鎖定的天數;
password_life_time:口令過期前的天數;
password_grace_time:口令過期后仍然可以登陸的天數;
password_reuse_time:相同口令可以再次使用的時間間隔,以天為單位;
password_reuse_max:在達到PASSWORD_REUSE_TIME指定時間后,要再次使用同一口令前必須改變的次數。
password_verify_function:密碼復雜性。
2)資源限制:
SESSIONS_PER_USER:每個用戶可以登陸的會話數;
CPU_PER_SESSION:指定會話的CPU時間限制,以百分之一秒為單位。
CPU_PER_CALL CPU時間限制,以百分之一秒為單位。
CONNECT_TIME 連接時間,以分鐘為單位
IDLE_TIME 指定會話期間持續不活動時間的允許期間,以分鐘表示。 長時間運行的查詢和其他操作不受此限制。
LOGICAL_READS_PER_SESSION 指定在會話中讀取的數據塊的允許數量,包括從內存和磁盤讀取的數據塊。
LOGICAL_READS_PER_CALL 指定為調用處理SQL語句(解析,執行或提取)而讀取的數據塊的允許數量。
PRIVATE_SGA 指定會話可以在系統全局區域(SGA)的共享池中分配的私有空間量。
只有設置了實例參數,才會應用資源限制:
alter system set resource_limit=true;
3.例子
3.1 創建新的配置文件
創建新的配置文件,供測試使用。
CREATE PROFILE app_user LIMIT
SESSIONS_PER_USER 3
CONNECT_TIME 2
PASSWORD_REUSE_MAX 2;
3.2 查看配置文件的類型
SQL> select distinct profile from dba_profiles;
PROFILE
------------------------------
MONITORING_PROFILE
APP_USER
DEFAULT
3.3 查看配置文件的內容
SQL> select * from dba_profiles where profile='APP_USER';#未分配的值,LIMIT字段為DEFAULT。
PROFILE RESOURCE_NAME RESOURCE_TYPE LIMIT ------------------------------ -------------------------------- ------------- ---------------------------------------- APP_USER COMPOSITE_LIMIT KERNEL DEFAULT APP_USER SESSIONS_PER_USER KERNEL 3 APP_USER CPU_PER_SESSION KERNEL DEFAULT APP_USER CPU_PER_CALL KERNEL DEFAULT APP_USER LOGICAL_READS_PER_SESSION KERNEL DEFAULT APP_USER LOGICAL_READS_PER_CALL KERNEL DEFAULT APP_USER IDLE_TIME KERNEL DEFAULT APP_USER CONNECT_TIME KERNEL 2 APP_USER PRIVATE_SGA KERNEL DEFAULT APP_USER FAILED_LOGIN_ATTEMPTS PASSWORD DEFAULT APP_USER PASSWORD_LIFE_TIME PASSWORD DEFAULT APP_USER PASSWORD_REUSE_TIME PASSWORD DEFAULT APP_USER PASSWORD_REUSE_MAX PASSWORD 2 APP_USER PASSWORD_VERIFY_FUNCTION PASSWORD DEFAULT APP_USER PASSWORD_LOCK_TIME PASSWORD DEFAULT APP_USER PASSWORD_GRACE_TIME PASSWORD DEFAULT
3.4 修改SCOTT用戶的默認配置文件
SQL> alter user scott profile app_user;
User altered
#啟用資源限制
alter system set resource_limit=true;
#登陸scott,連接會話超過3次會報錯
SQL> conn scott/tiger
ERROR:
ORA-02391: exceeded simultaneous SESSIONS_PER_USER limit
#連接2分鐘之后,執行查詢操作報錯;如果無操作,scott用戶仍不能登陸。
SQL> select count(1) from tabs;
select count(1) from tabs
*
ERROR at line 1:
ORA-00604: error occurred at recursive SQL level 1
ORA-02399: exceeded maximum connect time, you are being logged off
#修改scott的密碼,原密碼為tiger
SQL> alter user scott identified by scott;
User altered
SQL> alter user scott identified by scott;
alter user scott identified by scott
ORA-28007: 無法重新使用口令
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。