在UNIX或者LINUX中可以比較方便的管理ORACLE運行的進程,但在WINDOWS中ORACLE的每個會話是采用線程的機制進行管理,所以通過普通的任務管理器不能查看到具體的ORACLE用戶線程。
創新互聯建站主營共青城網站建設的網絡公司,主營網站建設方案,成都app軟件開發,共青城h5微信小程序開發搭建,共青城網站營銷推廣歡迎共青城等地區企業咨詢
當然,通過專用的線程管理工具是可以看到的,如WINDOWS附加工具箱中的Qslice(線程分析器)就可以。
windows里所有oracle事務統一由一個oracle.exe進程管理,pmon、smon等表現為oracle.exe內的線程。
linux系統里pmon、smon都是獨立的進程。
線程是進程的組成部分,進程中的資源由多個線程共享。你可以把它們想象成:
進程是老大,手上有的是鈔票、棍棒;
線程是他的小弟們,身無分文;
老大提供棍棒給小弟們出去辦事,辦事需要錢的時候由老大分配,小弟們搶來的鈔票歸老大統一支配。
樓上holly_866指出的方向是對的, 但是拼寫錯誤。。
ORACLE的多線程體現在DML上 在操作時, 如果見到/* +*/ (平時寫備注、評論塊的/**/符號中有加號, 那么則表明了使用Oracle Hint. /*+ parallel(表名,并發數)*/ (有時候寫作Append parallel,或者有時候直接寫Append) .
這里的并發數可以省略, 也可以自己規定。 如果是省略了, 那么它的設置是DBA完成的。 參數可以在V$parameter這個view里找到。
如果單純從開發的角度看:
ORACLE多線程可以提高某些語句查詢的速度(不是一定的,取決于你的核,和服務器, 我原本有一些材料可以圖示進程數和速度的關系,可惜一時找不到, 如果需要可以再聯系)。具體使用時, 做幾個測試 看看速率提高多少。比如我以前做數據倉庫時, 一個測試要用大概27分鐘, 2進程大概是23分鐘。 4進程開提高到了快22(21分50多秒)分鐘。 再提高進程數其實作用就遞減了。
從數據庫整體來看:
多線程并不是優化了你的查詢速率, 而是使用了更多數據庫的資源(其他用戶或者進程的資源)換來你的語句速率的提高。 聯系一下你的DBA, 因為很有可能你用了多進程后,從DBA的EM上會發現你資源在某時間段內用的很高,甚至會給出警告。 找DBA給你調一下進程數,或者給你建議。 還是同樣的上次數據倉庫的例子。 我用8進程時, DBA和我一起在看EM, 出現了一些資源占用太多的情況, 那么他要么就要調整空間,要么就要討論下是否值得為了短短的幾分鐘而降低數據庫的其他運行效率。 如果非要需要, 那么看是否可以將這樣的數據更新放在晚上,或者數據庫比較空閑的時間段。
上面講的都是概念, 如果你想看詳細一點的運算方法,可以找書看, 我這里的資料可能需要整理,也不方便, 建議自己找一下。 不需要看的太多, 一般了解則可。
查看ORACLE最大進程數:
SQL select count(*) from v$session #連接數
SQL Select count(*) from v$session where status='ACTIVE' #并發連接數
SQL show parameter processes #最大連接
SQL alter system set processes = value scope = spfile;重啟數據庫 #修改連接
unix 1個用戶session 對應一個操作系統 process
而 windows體現在線程
------------------------------------------------------------------------------
修改ORACLE最大進程數:
使用sys,以sysdba權限登錄:
SQL show parameter processes;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
aq_tm_processes integer 1
db_writer_processes integer 1
job_queue_processes integer 10
log_archive_max_processes integer 1
processes integer 150
SQL alter system set processes=300 scope = spfile;
系統已更改。
SQL show parameter processes;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
aq_tm_processes integer 1
db_writer_processes integer 1
job_queue_processes integer 10
log_archive_max_processes integer 1
processes integer 150
SQL create pfile from spfile;
文件已創建。
重啟數據庫,
SQL show parameter processes;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
aq_tm_processes integer 1
db_writer_processes integer 1
job_queue_processes integer 10
log_archive_max_processes integer 1
processes integer 300
網站名稱:oracle怎么看線程 CPU怎么看線程
文章地址:http://m.kartarina.com/article36/hgeosg.html
成都網站建設公司_創新互聯,為您提供移動網站建設、電子商務、網站設計公司、網站收錄、、網頁設計公司
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯