Oracle 理解限制 limit

2021-04-18 08:12:06 字數 1414 閱讀 3010

oracle裡有形形色色的限制(limit),清楚的了解這些限制可以幫助我們更好的使用oracle和理解oracle.

key word: ora-00018 , ora-00020

1。sessions

在初始化引數所設定的限制中,最為人所知的估計就是sessions和processes

sessions 引數指定了乙個 instance中能夠同時存在的sessions數量,或者說,就是能同時登陸到資料庫的併發使用者數。通常,我們設定這個數字時需要考慮我們可能會有多少個同時連線到資料庫的併發使用者,並加上後台程序的程序數,最後乘與1.1.

比如說,估計系統中可能會同時有100個使用者連線到資料庫,那麼,你的session最少應該為

(100 10 ) * 1.1 = 121

當資料庫連線的併發使用者已經達到這個值時,又有新session連進來,就會報錯

00018, 00000, "maximum number of sessions exceeded"

// *cause: all session state objects are in use.

// *action: increase the value of the sessions initialization parameter.

2.processes

和sessions是類似的是processes這個引數。

processes引數指定了instance在os層面所能同時執行的程序數。基於和sessions設定同樣的考慮,我們在設定processes時,也應考慮我們可能會有多少個同時連線到資料庫的併發使用者,並加上後台程序的程序數。

當然,在mts(shared server)的配置下,這個值的確定會有所不同。應該是普通後台程序 最大共享伺服器的程序數(max_shared_servers) 最大dispatcher程序數(max_dispatchers).

另外,由於在window平台中,oracle是以單一乙個程序的形式存在,processes 引數變成了限制oracle程序裡的執行緒數了。

當oracle需要啟動新的process而又已經達到processes引數時,就會報錯:

00020, 00000, "maximum number of processes (%s) exceeded"

// *cause: all process state objects are in use.

// *action: increase the value of the processes initialization parameter.

tag標籤: oracle

本文**

mysql查詢語句通過limit來限制查詢的行數

mysql查詢語句,通過程式設計客棧limit來限制查詢的行www.cppcns.com數。例如 select name from usertb where age 20 limit 0,1 限制從第一條開始,顯示1條 select name from usertb where age 20 lim...

oracle 限制索引

在sql中有很多陷阱會使一些索引無法使用。以下列出了一些常見的情況 1.使用不等於操作符 例 表customers,列cust rating有乙個索引.select cust id,cust name from customers where cust rating aa 這條sql將不會使用索引s...

ORACLE用LIMIT實現類似分頁

練習了oracle類似的分頁,目的 oracle的limit使用 declare type name arrary type is varray 20 of varchar2 10 name arrary name arrary type rowss int 輸入頁記錄數 dpno int 輸入部門...