1. 程式人生 > >oracle profile Idle_time設定(修改Oracle 資料庫連線引數)

oracle profile Idle_time設定(修改Oracle 資料庫連線引數)

  1.  sgcrm5*sgcrm5-/home/oracle >sqlplus / as sysdba  
  2. SQL*Plus: Release 11.1.0.6.0 - Production on Mon Oct 1514:38:252012
  3. Copyright (c) 19822007, Oracle.  All rights reserved.  
  4. Connected to:  
  5. Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - 64bit Production  
  6. With the Partitioning, OLAP, Data Mining and
     Real Application Testing options  
  7. [email protected]129.100.253.79> show parameter resource_limit  
  8. NAME                                 TYPE        VALUE  
  9. ------------------------------------ ----------- ------------------------------  
  10. resource_limit                       boolean     FALSE  
  11. [email protected]129.100.253.79> alter system set resource_limit=true scope=both;  
  12. System altered.  
  13. Elapsed: 00:00:00.08
  14. [email protected]129.100.253.79> select username,profile from DBA_USERS  
  15.   2  ;  
  16. USERNAME                       PROFILE  
  17. ------------------------------ ------------------------------  
  18. 9959                           DEFAULT  
  19. SCOTT                          DEFAULT  
  20. SPOTLIGHT                      DEFAULT  
  21. SPATIAL_WFS_ADMIN_USR          DEFAULT  
  22. MDDATA                         DEFAULT  
  23. XS$NULL                        DEFAULT  
  24. APEX_PUBLIC_USER               DEFAULT  
  25. TSMSYS                         DEFAULT  
  26. DIP                            DEFAULT  
  27. SPATIAL_CSW_ADMIN_USR          DEFAULT  
  28. ORACLE_OCM                     DEFAULT  
  29. OWBSYS                         DEFAULT  
  30. EXFSYS                         DEFAULT  
  31. FLOWS_030000                   DEFAULT  
  32. FLOWS_FILES                    DEFAULT  
  33. WK_TEST                        DEFAULT  
  34. DBSNMP                         MONITORING_PROFILE  
  35. WMSYS                          DEFAULT  
  36. ORDSYS                         DEFAULT  
  37. WKSYS                          WKSYS_PROF  
  38. XDB                            DEFAULT  
  39. OLAPSYS                        DEFAULT  
  40. SI_INFORMTN_SCHEMA             DEFAULT  
  41. ORDPLUGINS                     DEFAULT  
  42. WKPROXY                        DEFAULT  
  43. MDSYS                          DEFAULT  
  44. SYSMAN                         DEFAULT  
  45. CTXSYS                         DEFAULT  
  46. ANONYMOUS                      DEFAULT  
  47. SYS                            DEFAULT  
  48. SYSTEM                         DEFAULT  
  49. MGMT_VIEW                      DEFAULT  
  50. OUTLN                          DEFAULT  
  51. 33 rows selected.  
  52. Elapsed: 00:00:00.05
  53. [email protected]129.100.253.79> select distinct(profile) from dba_profiles;  
  54. PROFILE  
  55. ------------------------------  
  56. WKSYS_PROF  
  57. DEFAULT  
  58. MONITORING_PROFILE  
  59. PROFILE9959  
  60. Elapsed: 00:00:00.01
  61. [email protected]129.100.253.79> SELECT name, value  
  62.   2  FROM gv$parameter  
  63.   3  WHERE name = 'resource_limit';  
  64. NAME  
  65. --------------------------------------------------------------------------------  
  66. VALUE  
  67. --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  
  68. resource_limit  
  69. TRUE  
  70. Elapsed: 00:00:00.01
  71. [email protected]129.100.253.79> alter user system profile PROFILE9959;  
  72. User altered.  
  73. Elapsed: 00:00:00.07
  74. [email protected]129.100.253.79>   

注意:

設定完成後,對已經連上的會話不起作用,對新連上的會話才會生效。

動態地使用alter system或使用初始化引數resource_limit使資源限制生效。該改變對密碼資源無效,密碼資源總是可用。

資料庫profile中設定IDLE_TIME後,如果會話超過這個限制,PMON程序會:

[sql] view plain copy  print?
  1. * Mark the V$SESSION as SNIPED  
  2.  * Clean up the database resources for the session  
  3.  * Remove the V$SESSION entry  

經常會有SNIPED狀態的會話,這些會話不活動了,但卻佔用了使用者的會話數: 

select sid,serial#,paddr,username,status from v$session where status = 'SNIPED';

這裡我們看到的現象是v$session中,會話沒有被清理。最好的情況是,當用戶再次嘗試連線該會話時,會收到ORA-02396錯誤,然後會話被清理。

嘗試用alter system kill session,v$session中標記為KILLED,v$process、os process都是不清理的。

[python] view plain copy  print?
  1. select type,s.username,s.status,s.machine,s.program,'alter system kill session ' ||''''''||s.sid||','||s.serial# || ''';' oracle_level_kill,paddr from v$session s where status = 'KILLED'
  2. select 'kill -9 '||spid unix_level_kill from v$process where addr='07000002309E5BE8';  

OS上kill -9,會話被清理。
 

[python] view plain copy  print?
  1. DROP PROFILE PROFILE9959 CASCADE;  
  2. CREATE PROFILE PROFILE9959 LIMIT  
  3.   SESSIONS_PER_USER UNLIMITED  
  4.   CPU_PER_SESSION UNLIMITED  
  5.   CPU_PER_CALL UNLIMITED  
  6.   CONNECT_TIME UNLIMITED  
  7.   IDLE_TIME 120
  8.   LOGICAL_READS_PER_SESSION UNLIMITED  
  9.   LOGICAL_READS_PER_CALL UNLIMITED  
  10.   COMPOSITE_LIMIT UNLIMITED  
  11.   PRIVATE_SGA UNLIMITED  
  12.   FAILED_LOGIN_ATTEMPTS 10
  13.   PASSWORD_LIFE_TIME 180
  14.   PASSWORD_REUSE_TIME UNLIMITED  
  15.   PASSWORD_REUSE_MAX UNLIMITED  
  16.   PASSWORD_LOCK_TIME 1
  17.   PASSWORD_GRACE_TIME 7
  18.   PASSWORD_VERIFY_FUNCTION NULL;  

profile:配置檔案的名稱。Oracle資料庫以以下方式強迫資源限制:

1.如果使用者超過了connect_time或idle_time的會話資源限制,資料庫就回滾當前事務,並結束會話。使用者再次執行命令,資料庫則返回一個錯誤,

2.如果使用者試圖執行超過其他的會話資源限制的操作,資料庫放棄操作,回滾當前事務並立即返回錯誤。使用者之後可以提交或回滾當前事務,必須結束會話。

提示:可以將一條分成多個段,如1小時(1/24天)來限制時間,可以為使用者指定資源限制,但是資料庫只有在引數生效後才會執行限制。

Unlimited:分配該profile的使用者對資源使用無限制,當使用密碼引數時,unlimited意味著沒有對引數加限制。

Default:指定為default意味著忽略對profile中的一些資源限制,Default profile初始定義對資源不限制,可以通過alter profile命令來改變。

Resource_parameter部分

 Session_per_user:指定限制使用者的併發會話的數目。

Cpu_per_session:指定會話的CPU時間限制,單位為百分之一秒。

Cpu_per_call:指定一次呼叫(解析、執行和提取)的CPU時間限制,單位為百分之一秒。

Connect_time:指定會話的總的連線時間,以分鐘為單位。

Idle_time:指定會話允許連續不活動的總的時間,以分鐘為單位,超過該時間,會話將斷開。但是長時間執行查詢和其他操作的不受此限制。

Logical_reads_per_session:指定一個會話允許讀的資料塊的數目,包括從記憶體和磁碟讀的所有資料塊。

Logical_read_per_call:指定一次執行SQL(解析、執行和提取)呼叫所允許讀的資料塊的最大數目。

Private_sga:指定一個會話可以在共享池(SGA)中所允許分配的最大空間,以位元組為單位。(該限制只在使用共享伺服器結構時才有效,會話在SGA中的私有空間包括私有的SQL和PL/SQL,但不包括共享的SQL和PL/SQL)。

Composite_limit:指定一個會話的總的資源消耗,以service units單位表示。Oracle資料庫以有利的方式計算cpu_per_session,connect_time,logical_reads_per_session和private-sga總的service units

Password_parameter部分:

Failed_login_attempts:指定在帳戶被鎖定之前所允許嘗試登陸的的最大次數。

Password_life_time:指定同一密碼所允許使用的天數。如果同時指定了password_grace_time引數,如果在grace period內沒有改變密碼,則密碼會失效,連線資料庫被拒絕。如果沒有設定password_grace_time引數,預設值unlimited將引發一個數據庫警告,但是允許使用者繼續連線。

Password_reuse_time和password_reuse_max:這兩個引數必須互相關聯設定,password_reuse_time指定了密碼不能重用前的天數,而password_reuse_max則指定了當前密碼被重用之前密碼改變的次數。兩個引數都必須被設定為整數。

1.如果為這兩個引數指定了整數,則使用者不能重用密碼直到密碼被改變了password_reuse_max指定的次數以後在password_reuse_time指定的時間內。

如:password_reuse_time=30,password_reuse_max=10,使用者可以在30天以後重用該密碼,要求密碼必須被改變超過10次。

2.如果指定了其中的一個為整數,而另一個為unlimited,則使用者永遠不能重用一個密碼。

3.如果指定了其中的一個為default,Oracle資料庫使用定義在profile中的預設值,預設情況下,所有的引數在profile中都被設定為unlimited,如果沒有改變profile預設值,資料庫對該值總是預設為unlimited。

4.如果兩個引數都設定為unlimited,則資料庫忽略他們。

Password_lock_time:指定登陸嘗試失敗次數到達後帳戶的縮定時間,以天為單位。

Password_grace_time:指定寬限天數,資料庫發出警告到登陸失效前的天數。如果資料庫密碼在這中間沒有被修改,則過期會失效。

Password_verify_function:該欄位允許將複雜的PL/SQL密碼驗證指令碼做為引數傳遞到create profile語句。Oracle資料庫提供了一個預設的指令碼,但是自己可以建立自己的驗證規則或使用第三方軟體驗證。 對Function名稱,指定的是密碼驗證規則的名稱,指定為Null則意味著不使用密碼驗證功能。如果為密碼引數指定表示式,則該表示式可以是任意格式,除了資料庫標量子查詢。

轉自:http://blog.csdn.net/rgb_rgb/article/details/8073030

=============================================================================================================

使用resource_limit及profile限制使用者連線

    資料庫效能是一個永恆的話題,那就是如何使用更少的資源以達到更高效的效能。Oracle系統引數RESOURCE_LIMIT是一個用於控制使用者對於資料庫資源使用的引數,當值為true的時候即為啟用,否則禁用。該引數結合profile來可以控制多種資源的使用,如CPU_PER_SESSION, CONNECT_TIME,LOGICAL_READS_PER_SESSION, PRIVATE_SGA等等從而達到到節省資源來實現高效效能。本文描述了資料資源限制並演示了IDLE_TIME及SESSIONS_PER_USER的用法。   1、資料庫資源限制的主要步驟 Implemented by       * Setting RESOURCE_LIMIT = TRUE in the database startup parameter file (spfile or pfile)       * Creating or modifying existing user profiles (DBA_PROFILES) to have one or more resource limit      * Assigning a profile to a user whose resources are wished to be limited It could happen that if the idle_time has been set on the DEFAULT profile, this can lead to an MTS dispatchers being set to 'sniped' and then getting 'cleaned up' via the shell script. The removal of the dispatcher will result in other sessions 'dying' .In that case, If you are to implement resource limits, may be advisable to create new profiles that be assigned to users and not to change the characteristics of DEFAULT. Alternatively, if you do change DEFAULT, ensure that all the properties that you have affected have been fully tested in a development environment. 使用者超出限制後的完成的動作 When a resource limit is exceeded (for example IDLE_TIME) ... PMON does the following       * Mark the V$SESSION as SNIPED       * Clean up the database resources for the session      * Remove the V$SESSION entry   2、資源限制的配置 [sql]  --演示環境   SQL> select * from v$version where rownum<2;      BANNER   --------------------------------------------------------------------------------   Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production      --檢視引數resource_limit   SQL> show parameter resource_limit      NAME                                 TYPE        VALUE   ------------------------------------ ----------- ------------------------------   resource_limit                       boolean     FALSE      --修改引數resource_limit為true   SQL> alter system set resource_limit=true;      System altered.      SQL> show parameter resource_limit      NAME                                 TYPE        VALUE   ------------------------------------ ----------- ------------------------------   resource_limit                       boolean     TRUE      --建立profile,其idle_time為3分鐘   SQL> create profile app_user limit idle_time 3;       Profile created.      --修改profile,限制每個使用者只能開一個session   SQL> alter profile app_user limit sessions_per_user 1;      Profile altered.      --將使用者指派給特定的profile   SQL> alter user scott profile app_user;      User altered.      --檢視剛剛建立的profile,查詢結果中的RESOURCE_NAME都可以作相應的設定或修改   SQL> select * from dba_profiles where profile='APP_USER';      PROFILE                        RESOURCE_NAME                    RESOURCE LIMIT   ------------------------------ -------------------------------- -------- ----------------------------------------   APP_USER                       COMPOSITE_LIMIT                  KERNEL   DEFAULT   APP_USER                       SESSIONS_PER_USER                KERNEL   1   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   3   APP_USER                       CONNECT_TIME                     KERNEL   DEFAULT   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 DEFAULT   APP_USER                       PASSWORD_VERIFY_FUNCTION         PASSWORD DEFAULT   APP_USER                       PASSWORD_LOCK_TIME               PASSWORD DEFAULT   APP_USER                       PASSWORD_GRACE_TIME              PASSWORD DEFAULT      16 rows selected.   3、演示資源被限制的情形 [sql]  C:\Users\robinson.cheng>sqlplus scott/[email protected]  

相關推薦

oracle profile Idle_time設定修改Oracle 資料庫連線引數

 sgcrm5*sgcrm5-/home/oracle >sqlplus / as sysdba   SQL*Plus: Release 11.1.0.6.0 - Production on Mon Oct 1514:38:252012 Copyright (c)

不能開啟到主機的連線,在埠1521:連線失敗的解決方法修改遠端桌面連線

1、修改遠端桌面連線埠   遠端桌面終端服務預設埠為“3389”,為防止他人進行惡意連線,就需要對預設埠進行更改。對此可開啟登錄檔編輯器,依次展開“HKEY_LOCAL_MACHINE\SYSTEM\ CurrentControlSet\Control\Terminal S

Controller類介面設定接收前臺json格式引數

目錄 1無引數 1無引數 採用post方式 @PostMapping("/介面名字") public Void test(HttpServletRequest request) { //邏輯程式碼 } 2接收物件是實體類資料

oracle使用者建立、授權和許可權設定關於Oracle許可權2

許可權: create session create table unlimited tablespace connect resource dba 例: #sqlplus /nolog SQL> conn / as sysdba; SQL>

Oracle 遞歸查詢 start with ...connect by ...prior

父親 select 進行 根節點 con ble 檢索 記錄 where 1、connect by 是結構化查詢中用到的,其基本語法是:select … from tablename start with 條件1connect by 條件2where 條件3;例:selec

關於使用oozie做任務排程的問題。出現SQOOP from Oracle Connection reset errororacle匯入資料到HDFS上面

最近在做通過sqoop 將oracle資料庫當中的資料匯入的HDFS上面,但是當我序列的時候是沒有一點問題的。但是為了達到叢集當中資源的額最大的使用率。想讓匯入資料做成並行去處理。在做並行的時候,有時候是好的,有時候就出錯,這樣不穩定的系統真的頭大。出現的問題如下: 8/10/29 15:01:03

ORACLE資料生成awr報告與檢視資料庫連線

一,生成awr報告 查詢awrrpt.sql檔案位置 1 find / -name awrrpt.sql 2,進入oracle目錄 3登入oracle sqlplus / as sysdba 4, SQL>@/home/oracle/app/oracle/produc

Servlet學習筆記設定servlet的字符集、生命週期、對映配置、資料庫連線引數的區域性配置

設定servlet的字符集 servlet是sun公司提供的一門用於開發動態web資源的技術,使用java語言編寫的執行在伺服器端的程式,通過http超文字傳輸協議接受和響應來自客戶端的請求。 servlet的產生是把“html標記”和“大量的業務處理邏輯”給分開,繼續留在html頁

excel oracle欄位命名大寫下劃線分詞轉 駝峰命名

  (帕斯卡) =LEFT(C251,1)&MID(SUBSTITUTE(PROPER(C251),"_",""),2,100) (駝峰) =LOWER(LEFT(A:A,1))&MID(SUBSTITUTE(PROPER(A:A),"_",""),2,10

oracle 進階三索引、許可權,角色

索引 加速資料的存取,合理的使用索引可以大大降低i/o 的次數,提高訪問的效能 單列索引:基於單個列所建立的索引 create index 索引名 on 表名(列名); 複合索引:基於多個列的索引,同一個表可以有多個索引,但是要求列的組合必須不能,意思就是不能對於相同的組合

Oracle學習第一課登入oracle和建立使用者

部落格10:housen1987 housen1987.iteye.com/blog/1345496 【學習是螺旋上升的過程,由易到難,由少到多,由點到面,每一個步驟,每一個腳印,每一個見聞,每一個錯誤都是學習階段所必須的,學習最大的捷徑就是不著急、有耐心。】 給使

Nodejs TimeZone 相關設定修改時區

轉自 http://blog.csdn.net/u010668495/article/details/50817136 這篇文章寫於2016年3月,本文敘述的方法在Node新版本中已經無法得到預期結果,請看文末的解決方法 舊版本(0.12/5.3.0) 最近遇到了時區設定的問題 在Nodejs中,取當前時

ubuntu如何修改terminal終端的主機名修改/etc/hostname文件

名稱 sta too term who 系統 tle detail 哈哈 有時候安裝完Ubuntu系統後,打開命令終端,終端顯示的主機名格式比較難看,例如 我最近買的國內某雲的VPS。 [plain] view plain copy [em

若是MYsql資料庫沒有其他問題,要匯入到jre外部連結包裡資料庫連線問題

 嘗試著將mysql-connector-java-5.1.6-bin.jar的jar包加入E:\Program Files\Java\jdk1.6.0_20\jre\lib\ext資料夾下,問題解決了!!     原來是不僅僅要求將驅動加入

JavaWeb 之 15.JDBC提高事物和資料庫連線池)

## 事務和資料庫連線池 ## **事務**          1.什麼是事務:一組邏輯上的操作,要麼全都成功,要麼全都失敗。     2.模擬事務的操作     &nb

Centos6.8系統環境變數和別名設定永久生效和臨時生效export

1.Linux的變數種類   按變數的生存週期來劃分,Linux變數可分為兩類:  1.1 永久的:需要修改配置檔案,變數永久生效。  1.2 臨時的:使用export命令宣告即可,變數在關閉shell時失效。 2.設定變數的三種方法  2.1 在/etc/prof

Spring SpringMVC配置Druid資料來源資料庫連線

之前分享過Spring boot整合使用Druid的方法,現在分享下Spring,SpringMVC配置Druid的方法。我們一般常用的資料來源(資料庫連線池)有Druid,HikariCP。 web.xml增加如下配置語句: <filter> <fil

Pycharm 的設定--引數設定執行.py檔案帶引數,例如argument

程式執行時,如果需要輸入引數,如下圖中程式程式碼: 在生成exe後,程式在控制檯下執行時格式為:   這種情況在除錯程式時,如果只是在Pycharm環境中簡單執行“Run”選單下的“Run”命令,會出現以下錯誤,提示需要輸入引數。 為了解決這個問題,我們需要給程式事先指定好輸入引數。

虛擬機器安裝Ubuntu的上網設定有線網路和無線網路

虛擬機器下ubuntu共享方式上網: 一. 有線網路     在有線網路的條件下,vmware的安裝非常簡單,上網方式幾乎不用怎麼設定(預設NAT模式)     如果預設情況下不能上網,則按以下步驟嘗試: *********************************************

員工請假管理系統MFC+ACCESS資料庫+ODBC資料來源

主要介面:(未新增面板) 登陸介面: 主介面: 1.題目要求 用MFC和ACCESS資料庫設計一個請假管理系統可以進行對員工請假的管理和對公司假期及國定假期的設定。 2.功能需求       2.1.系統管理        更換登入使用者       退出