oracle的profile檔案學習
ORACLE的PROFILE檔案是限制資料庫使用者使用資源的一種手段。
可以用來控制session或sql能使用的CPU、控制使用者的密碼管理策略等。
資料庫建立後,系統中存在名為DEFAULT的預設PROFILE,若不做特殊指定,建立使用者時使用者預設使用的PROFILE就是DEFAULT。
1、檢視資料庫中有哪些profile檔案:
SQL> select distinct profile from dba_profiles;
PROFILE
------------------------------
DEFAULT
這裡資料庫中只有一個profile,就是系統自帶的DEFAULT。
2、檢視這些profile中所有的內容:
可以用來控制session或sql能使用的CPU、控制使用者的密碼管理策略等。
資料庫建立後,系統中存在名為DEFAULT的預設PROFILE,若不做特殊指定,建立使用者時使用者預設使用的PROFILE就是DEFAULT。
1、檢視資料庫中有哪些profile檔案:
SQL> select distinct profile from dba_profiles;
PROFILE
------------------------------
DEFAULT
這裡資料庫中只有一個profile,就是系統自帶的DEFAULT。
2、檢視這些profile中所有的內容:
可以看到resoure_type有兩種,一種是kernel,一種是password。
需要記住的是password資源是永遠可用的,而且任何關於password資源的修改都是立即生效,無須修改。
而kernel資源是收到引數resource_limit的限制的。只有當resource_limit引數設定為true時,kernel資源的限制才會生效。
SQL> show parameter resource_limit
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
resource_limit boolean FALSE
3、修改profile
alter profile [資原始檔名] limit [資源名] unlimited;
例如:alter profile default limit failed_login_attempts 100;
4、刪除profile
drop profile [資原始檔名] [CASCADE] ;
cascade意義:若建立的PROFILE已經授權給了某個使用者,使用CASCADE級聯收回相應的限制,收回限制資訊後將以系統預設的PROFILE對該使用者進行限制。
例如:
SQL> drop profile sess;
drop profile sess
ORA-02382: 概要檔案 SESS 指定了使用者, 不能沒有 CASCADE 而刪除
SQL> drop profile sess cascade;
Profile dropped
5、檢視每個使用者所屬的profile:
SQL> SELECT username,PROFILE FROM dba_users;
6、常見的關於profile的使用場景:
a)限制某一個使用者的連線數:
SQL>alter system set resource_limit =TRUE; ----設定 RESOURCE_LIMIT引數為TRUE,即開啟資源限制:
SQL>create profile sess limit sessions_per_user 20; ---建立名為sess的PROFILE,並將最大連線數限制為20
SQL>alter user test profile sess; -----將PROFILE指定給使用者test
檢視操作結果:
SQL> SELECT username,PROFILE FROM dba_users where username='TEST';
USERNAME PROFILE
------------------------------ ------------------------------
TEST SESS
b)修改使用者密碼的使用期限。oracle預設使用者密碼180天就到期,之後必須修改密碼。可以改掉這個設定:
sql>ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
修改後,還沒有被提示ORA-28002警告的帳戶不會再碰到同樣的提示;已經被提示的使用者需要修改密碼,直接將密碼設定和舊的一樣就行。
c)修改密碼輸入錯誤的最大限制次數。oracle預設是10次,連續輸錯10次密碼後,使用者賬號會被鎖。可以更改該設定:
sql>ALTER PROFILE DEFAULT LIMIT FAILED_LOGIN_ATTEMPTS UNLIMITED;
修改後,還沒有被提示ORA-28000警告的使用者不會再碰到同樣的提示;已經被鎖定的帳戶必須解除鎖定。
需要記住的是password資源是永遠可用的,而且任何關於password資源的修改都是立即生效,無須修改。
而kernel資源是收到引數resource_limit的限制的。只有當resource_limit引數設定為true時,kernel資源的限制才會生效。
SQL> show parameter resource_limit
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
resource_limit boolean FALSE
3、修改profile
alter profile [資原始檔名] limit [資源名] unlimited;
例如:alter profile default limit failed_login_attempts 100;
4、刪除profile
drop profile [資原始檔名] [CASCADE] ;
cascade意義:若建立的PROFILE已經授權給了某個使用者,使用CASCADE級聯收回相應的限制,收回限制資訊後將以系統預設的PROFILE對該使用者進行限制。
例如:
SQL> drop profile sess;
drop profile sess
ORA-02382: 概要檔案 SESS 指定了使用者, 不能沒有 CASCADE 而刪除
SQL> drop profile sess cascade;
Profile dropped
5、檢視每個使用者所屬的profile:
SQL> SELECT username,PROFILE FROM dba_users;
6、常見的關於profile的使用場景:
a)限制某一個使用者的連線數:
SQL>alter system set resource_limit =TRUE; ----設定 RESOURCE_LIMIT引數為TRUE,即開啟資源限制:
SQL>create profile sess limit sessions_per_user 20; ---建立名為sess的PROFILE,並將最大連線數限制為20
SQL>alter user test profile sess; -----將PROFILE指定給使用者test
檢視操作結果:
SQL> SELECT username,PROFILE FROM dba_users where username='TEST';
USERNAME PROFILE
------------------------------ ------------------------------
TEST SESS
b)修改使用者密碼的使用期限。oracle預設使用者密碼180天就到期,之後必須修改密碼。可以改掉這個設定:
sql>ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
修改後,還沒有被提示ORA-28002警告的帳戶不會再碰到同樣的提示;已經被提示的使用者需要修改密碼,直接將密碼設定和舊的一樣就行。
c)修改密碼輸入錯誤的最大限制次數。oracle預設是10次,連續輸錯10次密碼後,使用者賬號會被鎖。可以更改該設定:
sql>ALTER PROFILE DEFAULT LIMIT FAILED_LOGIN_ATTEMPTS UNLIMITED;
修改後,還沒有被提示ORA-28000警告的使用者不會再碰到同樣的提示;已經被鎖定的帳戶必須解除鎖定。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28497416/viewspace-2128701/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle Profile學習Oracle
- Oracle基礎 09 概要檔案 profileOracle
- AIX環境oracle使用者的.profile檔案(轉)AIOracle
- Maven學習--profileMaven
- maven中的profile檔案的解析Maven
- oracle學習(4) -資料庫檔案Oracle資料庫
- .Oracle固定執行計劃之SQL PROFILE概要檔案OracleSQL
- 檔案IO的學習
- /etc/profile、~/.bash_profile等幾個檔案的執行過程
- 【學習日記】oracle之表空間、資料檔案、控制檔案Oracle
- gch檔案學習GC
- Profile配置和載入配置檔案
- 【Linux/etc/profile檔案詳解 】Linux
- Oracle profile的使用Oracle
- Oracle profileOracle
- 【轉】oracle學習筆記(三)之檢查Oracle的告警日誌檔案Oracle筆記
- profile檔案對sysdba使用者的影響
- Linux下/etc/profile、~/.bash_profile等幾個檔案的執行過程Linux
- 有關控制檔案的學習(一):
- 檔案包含-基於Pikachu的學習
- 學習Rust 檔案與 IORust
- B站java學習檔案Java
- SAP RETAIL 特徵引數檔案(Characteristic Profile) IAI特徵
- SAP RETAIL 特徵引數檔案(Characteristic Profile) IIAI特徵
- SAP RETAIL 特徵引數檔案(Characteristic Profile) IIIAI特徵
- Oracle學習系列—歸檔模式的切換Oracle模式
- 【DB2學習】db2profile的指令碼DB2指令碼
- oracle之profile的應用Oracle
- oracle之 profile的應用Oracle
- 物聯網學習教程—檔案的定位
- linux中的配置檔案/etc/profile和.bashfile 的區別Linux
- 全面學習和應用ORACLE ASM特性--(5)管理asm磁碟中的檔案OracleASM
- oracle 學習總結篇二: 伺服器引數檔案spfile的使用Oracle伺服器
- Oracle OCP(29):PROFILEOracle
- ORACLE SQL PROFILE使用OracleSQL
- oracle profile 試驗Oracle
- oracle .bash_profileOracle
- Linux系統環境變數檔案解析(etc/profile ,/etc/bashrc ,~/.bash_profile)Linux變數