日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
SQL數(shù)據(jù)庫優(yōu)化:簡單快捷刪除臨時表空間(sql數(shù)據(jù)庫刪除臨時表空間)

隨著業(yè)務(wù)的增長和數(shù)據(jù)量的增加,數(shù)據(jù)庫的性能問題逐漸成為了企業(yè)最關(guān)心的問題之一。數(shù)據(jù)庫空間管理是數(shù)據(jù)庫性能優(yōu)化的一個非常重要的方面。在數(shù)據(jù)庫運維中,臨時表空間是常見的占用很多磁盤空間和影響數(shù)據(jù)庫性能的問題。

10多年的井陘網(wǎng)站建設(shè)經(jīng)驗,針對設(shè)計、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時及時工作處理。營銷型網(wǎng)站的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動調(diào)整井陘建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計,從而大程度地提升瀏覽體驗。成都創(chuàng)新互聯(lián)公司從事“井陘網(wǎng)站設(shè)計”,“井陘網(wǎng)站推廣”以來,每個客戶項目都認真落實執(zhí)行。

在Oracle數(shù)據(jù)庫中,臨時表空間用于存儲SQL語句執(zhí)行時的中間結(jié)果。當SQL語句需要使用排序、分組、連接等操作時,數(shù)據(jù)庫會將結(jié)果暫時存放到臨時表空間中,以供后續(xù)使用。由于臨時表空間的使用過程涉及到大量的磁盤IO,因此臨時表空間的管理對于數(shù)據(jù)庫性能的影響非常大。正確地管理臨時表空間可以更大限度地減少磁盤IO,提高數(shù)據(jù)庫的性能。

然而,在實際的數(shù)據(jù)庫運維中,經(jīng)常會有臨時表空間占用磁盤空間過多的情況,這將導(dǎo)致磁盤空間的緊張甚至磁盤滿了,進而影響數(shù)據(jù)庫的正常運行。為了解決這一問題,我們需要采取一些有效的措施進行臨時表空間的管理和優(yōu)化。

一、檢查臨時表空間容量

在日常數(shù)據(jù)庫運維中,我們應(yīng)該經(jīng)常檢查臨時表空間的容量情況。當發(fā)現(xiàn)臨時表空間的容量占用過多時,我們需要盡快采取措施進行優(yōu)化??梢酝ㄟ^以下SQL語句查詢當前使用了多少臨時表空間:

“`sql

select TABLESPACE_NAME, sum(BYTES)/1024/1024 MB_USED,

(sum(MAXBYTES)-sum(BYTES))/1024/1024 MB_FREE,

sum(MAXBYTES)/1024/1024 MB_TOTAL

from v$tempfile

group by TABLESPACE_NAME;

“`

該語句將輸出每個表空間當前使用的空間、空閑空間和總?cè)萘?。通過這些信息,我們可以清楚地了解到臨時表空間的容量情況,并判斷是否需要進行優(yōu)化。

二、刪除不再使用的臨時表空間

在數(shù)據(jù)庫運維中,由于一些SQL語句未能正常執(zhí)行或運行時發(fā)生了異常,可能會導(dǎo)致臨時表空間沒有被正確地釋放,從而占用了大量的磁盤空間。此外,在數(shù)據(jù)庫備份和轉(zhuǎn)儲過程中,也可能產(chǎn)生大量的臨時表空間。這些不再使用的臨時表空間會對數(shù)據(jù)庫的性能帶來負面影響。因此,我們應(yīng)該在適當?shù)臅r候刪除這些不再使用的臨時表空間。

可以采用以下SQL語句檢查數(shù)據(jù)庫中不再使用的臨時表空間:

“`sql

select * from dba_temp_files where tablespace_name not in

(select distinct tablespace_name from v$tempfile);

“`

以上語句將從數(shù)據(jù)庫中查詢出不再使用的臨時表空間,這些臨時表空間可以被刪除以釋放磁盤空間。

三、刪除臨時表空間中已經(jīng)過期的臨時數(shù)據(jù)

由于臨時表空間的數(shù)據(jù)是暫時性的,所以在臨時表空間中存在很多已經(jīng)過期的臨時數(shù)據(jù)。如果不及時清除這些過期的臨時數(shù)據(jù),將對數(shù)據(jù)庫的性能產(chǎn)生一定的影響。因此,及時清除過期的臨時數(shù)據(jù)也是優(yōu)化臨時表空間的一個非常重要的措施。

可以采用以下SQL語句查找臨時表空間中的過期數(shù)據(jù):

“`sql

select * from v$sort_usage where timestamp

“`

該語句將查詢出臨時表空間中24小時內(nèi)未使用的臨時數(shù)據(jù),可以通過該語句清除掉已經(jīng)過期的臨時數(shù)據(jù)。

四、通過腳本自動化管理臨時表空間

除了手動管理臨時表空間,我們還可以采用腳本自動化管理臨時表空間。通過腳本自動化管理,不僅可以提高管理效率,還可以大大減少人為失誤的風(fēng)險。以下是一個簡單的腳本示例:

“`sql

BEGIN

FOR TEMP_TBL IN (SELECT A.tablespace_name tablespace_name, A.file_name file_name,

TO_CHAR(C.sysdate, ‘yyyymmdd’) system_date

FROM dba_temp_files A,V$TEMPORARY_LOBS B, V$SESSION C

WHERE A.file_id=B.file_id AND B.tablespace_name=A.tablespace_name

AND B.saddr=C.saddr AND C.username = ‘MYUSERNAME’)

LOOP

EXECUTE IMMEDIATE ‘ALTER TABLESPACE ‘||TEMP_TBL.tablespace_name||’ ADD TEMPFILE ”’||

REPLACE (TEMP_TBL.file_name,’.dbf’,”)||’_’||TEMP_TBL.system_date||

‘.dbf” SIZE 50M AUTOEXTEND ON NEXT 10M MAXSIZE 2023M’;

EXECUTE IMMEDIATE ‘ALTER TABLESPACE ‘||TEMP_TBL.tablespace_name||’ TEMPFILE ”’||

TEMP_TBL.file_name||”’ DROP INCLUDING DATAFILES’;

END LOOP;

END;

“`

以上腳本將刪除臨時表空間中過期的臨時數(shù)據(jù),并創(chuàng)建一個新的臨時表空間,以保證數(shù)據(jù)庫的正常運行。此外,我們還可以通過修改腳本中的參數(shù)來自定義臨時表空間的大小和自動擴展等行為,以滿足不同業(yè)務(wù)的需要。

優(yōu)化臨時表空間可以大大提高數(shù)據(jù)庫的性能,降低磁盤IO,同時也能夠釋放寶貴的磁盤空間。在實際的數(shù)據(jù)庫運維中,我們需要經(jīng)常檢查臨時表空間的容量情況,及時刪除不再使用的臨時表空間和過期的臨時數(shù)據(jù),并且可以通過腳本自動化管理臨時表空間,以保證數(shù)據(jù)庫的正常運行。隨著互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展和數(shù)據(jù)量的不斷增長,數(shù)據(jù)庫性能優(yōu)化的問題將越來越受到企業(yè)的關(guān)注,我們需要不斷地學(xué)習(xí)和掌握數(shù)據(jù)庫運維和優(yōu)化的技能,以提高業(yè)務(wù)運行的效率和質(zhì)量。

成都網(wǎng)站建設(shè)公司-創(chuàng)新互聯(lián)為您提供網(wǎng)站建設(shè)、網(wǎng)站制作、網(wǎng)頁設(shè)計及定制高端網(wǎng)站建設(shè)服務(wù)!

OracleTemp臨時表空間處理

Temporary tablespace是oracle里臨時表空間 臨時表空間主要用途是在數(shù)據(jù)庫進行排序運算 管理索引 訪問視圖等操作時提供臨時的運算空間 當運算完成之后系統(tǒng)會磨高自動清理 當oracle里需要用到sort的時候 PGA中sort_area_size大小不夠時 將會把數(shù)據(jù)放入臨時表空間里進行排序 同時如果有異常情況的話 也會被放入臨時表空間 正常來說 在完成Select語句 create index等一些使用TEMP表空間的排序操作后 Oracle是會自動釋放掉臨時段的 但有些有侯我們則會遇到臨時段沒有被釋放 TEMP表空間幾乎滿的狀況 甚至是我們重漏游埋啟了數(shù)據(jù)庫仍沒有解決問題

  排序是很耗資源的 Temp表空間滿了 關(guān)鍵是優(yōu)化你的語句 盡量使排序減少才是上策

  Temp表空間滿時的處理方法

  一 修改參數(shù)(僅適用于 i及 i以下版本)

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

  SQL>alter tablespace temp increase ;

  SQL>alter tablespace temp increase ;

  二 kill session

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

  SELECT se username se SID se serial# se sql_address se machine se program su TABLESPACE

  su segtype   su CONTENTS FROM v$session se v$sort_usage su

  WHERE se saddr = su session_addr

   kill正在使用臨時段的進程

  SQL>Alter system kill session sid serial# ;

   把TEMP表空間回縮一下

  SQL>Alter tablespace TEMP coalesce;

  注

  這處方法只能針對字典管理表空間(Dictionary Managed Tablespace) 于本地管理表空間(LMT:Local Managed Tablespace) 不需要整理的 i以后只能創(chuàng)建本地管理的表空間

  CREATE TABLESPACE TEST DATAFILE D:\TEST dbf SIZE M EXTENT MANAGEMENT DICTIONARY

  CREATE TABLESPACE TEST DATAFILE D:\TEST dbf SIZE M EXTENT MANAGEMENT LOCAL;

  三 重啟數(shù)據(jù)庫庫

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

  四 使用診斷事件的一種方法 也是最有效的一種方法

   確定TEMP表空間的ts#

  SQL>select ts# name from sys ts$ ;

  TS# NAME

  

   SYSTEM

   UNDOTBS

   SYSAUX

   TEMP

   USERS

   UNDOTBS

   執(zhí)行清理操作

  SQL>alter session set events immediate trace name DROP_SEGMENTS level ;

  說明

  temp表空間的TS# 為 So TS#+ =

  重建TEMP 表空間

  Temporary tablespace是不能直接drop默認的臨時表空間的 不過我們可以通過以下方法來做

  準備 查看目前的Temporary Tablespace

  SQL> select name from v$tempfile;

  NAME

  ————————————————返螞———————

  D:\ORACLE\ORADATA\TEST\TEMP DBF

  SQL> select username temporary_tablespace from dba_users;

  USERNAME      TEMPORARY_TABLESPACE

  

  MGMT_VIEW    TEMP

  SYS      TEMP

  SYSTEMTEMP

  DBSNMPTEMP

  SYANTEMP

   創(chuàng)建中轉(zhuǎn)臨時表空間

  create temporary tablespace  TEMP TEMPFILE E:\ORACLE\ORADATA\ORCL\temp DBF SIZE M REUSE AUTOEXTEND ON NEXT  M MAXSIZE UNLIMITED;

   改變?nèi)笔∨R時表空間 為剛剛創(chuàng)建的新臨時表空間temp

  alter database default  temporary tablespace  temp ;

   刪除原來臨時表空間

  drop tablespace temp including contents and datafiles;

   重新創(chuàng)建臨時表空間

  create temporary tablespace  TEMP TEMPFILE E:\ORACLE\ORADATA\ORCL\temp DBF SIZE M REUSE AUTOEXTEND ON NEXT  M MAXSIZE UNLIMITED;

   重置缺省臨時表空間為新建的temp表空間

  alter database default  temporary tablespace  temp;

   刪除中轉(zhuǎn)用臨時表空間

  drop tablespace temp including contents and datafiles;

   如果有必要 那么重新指定用戶表空間為重建的臨時表空間

  alter user arbor temporary tablespace  temp;

  查看表空間語句 不過查不出Temp表空間

  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 * )

   ) 使用比

  F TOTAL_BYTES 空閑空間(M)

  F MAX_BYTES 更大塊(M)

  FROM (SELECT TABLESPACE_NAME

  ROUND(SUM(BYTES) / ( * ) ) TOTAL_BYTES

  ROUND(MAX(BYTES) / ( * ) ) MAX_BYTES

  FROM SYS DBA_FREE_SPACE

  GROUP BY TABLESPACE_NAME) F

  (SELECT DD TABLESPACE_NAME

  ROUND(SUM(DD BYTES) / ( * ) ) TOT_GROOTTE_MB

  FROM SYS DBA_DATA_FILES DD

  GROUP BY DD TABLESPACE_NAME) D

  WHERE D TABLESPACE_NAME = F TABLESPACE_NAME

lishixinzhi/Article/program/Oracle/202311/17017

關(guān)于sql 數(shù)據(jù)庫刪除臨時表空間的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。

香港服務(wù)器選創(chuàng)新互聯(lián),香港虛擬主機被稱為香港虛擬空間/香港網(wǎng)站空間,或者簡稱香港主機/香港空間。香港虛擬主機特點是免備案空間開通就用, 創(chuàng)新互聯(lián)香港主機精選cn2+bgp線路訪問快、穩(wěn)定!


分享文章:SQL數(shù)據(jù)庫優(yōu)化:簡單快捷刪除臨時表空間(sql數(shù)據(jù)庫刪除臨時表空間)
文章鏈接:http://www.dlmjj.cn/article/coppidh.html