av激情亚洲男人的天堂国语,日韩欧美精品一中文字幕,无码av一区二区三区无码,国产又色又爽又刺激的a片,国产又色又爽又刺激的a片

Oracle清理臨時表空間的實際操作

本文是對Oracle清理臨時表空間的相關(guān)應(yīng)用的介紹。正常的來說,我們在完成Select語句、等一些經(jīng)常使用TEMP的表空間排序與相關(guān)操作后,Oracle會自動的釋放掉在臨時段a的。以下就是相關(guān)內(nèi)容的介紹。

成都創(chuàng)新互聯(lián)公司長期為1000+客戶提供的網(wǎng)站建設(shè)服務(wù),團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為湖州企業(yè)提供專業(yè)的成都網(wǎng)站建設(shè)、網(wǎng)站制作,湖州網(wǎng)站改版等技術(shù)服務(wù)。擁有10多年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。

但有些有侯我們則會遇到臨時段沒有被釋放,TEMP表空間幾乎滿的狀況,甚至是我們重啟了數(shù)據(jù)庫仍沒有解決問題。這個問題在論壇中也常被網(wǎng)友問到,下面我總結(jié)一下,給出幾種處理方法。

法一、重啟庫

庫重啟時,Smon進程會完成臨時段釋放,TEMP表空間的清理操作,不過很多的時侯我們的庫是不允許down的,所以這種方法缺少了一點的應(yīng)用機會,不過這種方法還是很好用的。

法二、Metalink給出的一個方法

修改一下TEMP表空間的storage參數(shù),讓Smon進程觀注一下臨時段,從而達到清理和TEMP表空間的目的。

 
 
 
  1. SQL>alter tablespace temp increase 1;  
  2. SQL>alter tablespace temp increase 0;  

法三、我常用的一個方法,具體內(nèi)容如下:

1、 使用如下語句a查看一下認誰在用臨時段

 
 
 
  1. SELECT username,  
  2. sid,  
  3. serial#,  
  4. sql_address,  
  5. machine,  
  6. program,  
  7. tablespace,  
  8. segtype,  
  9. contents  
  10. FROM v$session se,  
  11. v$sort_usage su  
  12. WHERE se.saddr=su.session_addr  

2、 那些正在使用臨時段的進程

 
 
 
  1. SQL>Alter system kill session 'sid,serial#';  

3、把TEMP表空間回縮一下

 
 
 
  1. SQL>Alter tablespace TEMP coalesce; 

法四、使用診斷事件的一種方法,也是被我認為是“殺手锏”的一種方法

1、 確定TEMP表空間的ts#

 
 
 
  1. SQL>select ts#, name from sys.ts$ ;  
  2. TS# NAME  
  3. SYSYEM  
  4. RBS  
  5. USERS  
  6. TEMP  
  7. TOOLS  
  8. INDX  
  9. DRSYS 

2、 執(zhí)行清理操作

 
 
 
  1. SQL>alter session set events 'immediate trace name 
    DROP_SEGMENTS level 4' ; 

說明:

temp表空間的TS# 為 3*, So TS#+ 1= 4

Oracle清理的其它方法:

1、 出現(xiàn)如上問題的原因我認為可能是由于大的排序超出了TEMP表空間的空間允許范圍引起的。也可能包含著其它的異常的因素。

2、 觀注TEMP等這些空間的狀態(tài)是Dba日常職責(zé)之一,我們可以通過Toad、Object Browser等這些工具辦到,也可以用如下的語句:

SELECT UPPER(F.TABLESPACE_NAME) "表空間名",

D.TOT_GROOTTE_MB "表空間大小(M)",

D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空間(M)",

TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100,

2),

'990.99') "使用比",

F.TOTAL_BYTES "空閑空間(M)",

F.MAX_BYTES "***塊(M)"

 
 
 
  1. FROM (SELECT TABLESPACE_NAME,  
  2. ROUND(SUM(BYTES) / (1024 * 1024), 2) TOTAL_BYTES,  
  3. ROUND(MAX(BYTES) / (1024 * 1024), 2) MAX_BYTES  
  4. FROM SYS.DBA_FREE_SPACE  
  5. GROUP BY TABLESPACE_NAME) F,  
  6. (SELECT DD.TABLESPACE_NAME,  
  7. ROUND(SUM(DD.BYTES) / (1024 * 1024), 2) TOT_GROOTTE_MB  
  8. FROM SYS.DBA_DATA_FILES DD  
  9. GROUP BY DD.TABLESPACE_NAME) D  
  10. WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME  
  11. ORDER BY 4 DESC  

以上的相關(guān)內(nèi)容就是對Oracle清理臨時表空間的介紹,望你能有所收獲。


文章名稱:Oracle清理臨時表空間的實際操作
鏈接URL:http://uogjgqi.cn/article/dpjgiij.html
掃二維碼與項目經(jīng)理溝通

我們在微信上24小時期待你的聲音

解答本文疑問/技術(shù)咨詢/運營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流