欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Oracle數(shù)據(jù)庫(kù)刪除表空間后磁盤(pán)空間不釋放的問(wèn)題及解決

 更新時(shí)間:2023年11月20日 09:31:37   作者:樓蘭過(guò)客  
這篇文章主要介紹了Oracle數(shù)據(jù)庫(kù)刪除表空間后磁盤(pán)空間不釋放的問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

有些小白在操作數(shù)據(jù)庫(kù)時(shí)隨便新建表空間,并且喜歡直接設(shè)置最大值把表空間文件直接設(shè)置成32G,而后在導(dǎo)庫(kù)的時(shí)候又沒(méi)進(jìn)行正確操作導(dǎo)致新建的表空間并未使用,而把數(shù)據(jù)又全部導(dǎo)入users表空間了,這樣就造成數(shù)據(jù)庫(kù)服務(wù)器磁盤(pán)空間的浪費(fèi),對(duì)于這種情況有兩種解決方案,把表空間減小或者直接刪除。

首先附一個(gè)查詢表空間使用率的SQL吧(需要有dba權(quán)限的用戶):

select a.tablespace_name,
       total,
       free,
       total - free as used,
       substr(free / total * 100, 1, 5) as "FREE%",
       substr((total - free) / total * 100, 1, 5) as "USED%"
  from (select tablespace_name, sum(bytes) / 1024 / 1024 as total
          from dba_data_files
         group by tablespace_name) a,
       (select tablespace_name, sum(bytes) / 1024 / 1024 as free
          from dba_free_space
         group by tablespace_name) b
 where a.tablespace_name = b.tablespace_name
 order by a.tablespace_name;

此條SQL可以非常直觀的看到數(shù)據(jù)庫(kù)中各個(gè)表空間的實(shí)時(shí)使用率情況,在數(shù)據(jù)庫(kù)導(dǎo)庫(kù)的時(shí)候也可以定時(shí)刷新進(jìn)行查看(但不包括臨時(shí)表空間)。

一、修改表空間數(shù)據(jù)文件大小

1、查詢表空間數(shù)據(jù)文件

select tablespace_name, file_id, file_name,round(bytes/(1024*1024),0) total_space from dba_data_files order by tablespace_name

2、找到表空間對(duì)應(yīng)的數(shù)據(jù)文件后對(duì)數(shù)據(jù)文件的大小進(jìn)行調(diào)整

alter database datafile '/oracle/oradata/ora16/DATA01.dbf' resize 100m  --注意替換表空間路徑

在修改表空間大小的時(shí)候有可能會(huì)報(bào)錯(cuò),報(bào)錯(cuò)信息**“ORA-03297: 文件包含在請(qǐng)求的 RESIZE 值以外使用的數(shù)據(jù)”**,由于表空間中數(shù)據(jù)并非按順序分布,因此在刪減掉的表空間中可能也存在數(shù)據(jù),就會(huì)有面的報(bào)錯(cuò)信息,這個(gè)問(wèn)題的解決方案我以后會(huì)在博客中更新;

臨時(shí)的替代解決方案就是將表空間大小的數(shù)值稍微改大點(diǎn)重試,比如由10G修改為100M時(shí)報(bào)錯(cuò),可以先修改為500M,如果不報(bào)錯(cuò)就再減小…

二、刪除數(shù)據(jù)庫(kù)表空間及文件

刪除表空間及數(shù)據(jù)文件的SQL:

drop tablespace XXX including contents and datafiles;

刪除表空間之前記得斷開(kāi)所有用戶連接,否則無(wú)法刪除,會(huì)報(bào)錯(cuò)。

刪除表空間之后在數(shù)據(jù)庫(kù)服務(wù)器上使用df -lh(Linux)/df -g(aix)上查看磁盤(pán)空間容量發(fā)現(xiàn)和刪除前的是一樣的,并沒(méi)有變化。

lsof -n | grep deleted找到剛才刪除的dbf文件(后邊會(huì)有一個(gè)deleted的標(biāo)識(shí)),查看對(duì)應(yīng)的pid,直接kill掉就可以了。

這是因?yàn)檫@些被刪除的表空間數(shù)據(jù)文件還被數(shù)據(jù)庫(kù)進(jìn)程所持有,在進(jìn)程關(guān)閉之前磁盤(pán)空間是不會(huì)釋放的,如果想要驗(yàn)證該方法的可用性把數(shù)據(jù)庫(kù)重啟一次就可以了,數(shù)據(jù)庫(kù)重啟的效果等同于使用kill命令。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • oracle定時(shí)任務(wù)定時(shí)無(wú)效的原因分析與解決

    oracle定時(shí)任務(wù)定時(shí)無(wú)效的原因分析與解決

    發(fā)現(xiàn)系統(tǒng)數(shù)據(jù)沒(méi)有更新,查看oracle定時(shí)任務(wù),估計(jì)沒(méi)有執(zhí)行,下面這篇文章主要給大家介紹了關(guān)于oracle定時(shí)任務(wù)定時(shí)無(wú)效的原因分析與解決方法,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-06-06
  • Oracle中的觸發(fā)器trigger

    Oracle中的觸發(fā)器trigger

    這篇文章介紹了Oracle中的觸發(fā)器trigger,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-05-05
  • 在Tomcat服務(wù)器下使用連接池連接Oracle數(shù)據(jù)庫(kù)

    在Tomcat服務(wù)器下使用連接池連接Oracle數(shù)據(jù)庫(kù)

    本文為大家介紹下在Tomcat服務(wù)器下使用連接池來(lái)連接數(shù)據(jù)庫(kù)的操作,下面有個(gè)不錯(cuò)的示例,大家可以參考下
    2014-01-01
  • oracle中sql 正則寫(xiě)法詳解

    oracle中sql 正則寫(xiě)法詳解

    Oracle中使用正則表達(dá)式需先使用REGEXP_LIKE函數(shù)來(lái)匹配字符串。正則表達(dá)式的語(yǔ)法與一般正則表達(dá)式相似,但具體的寫(xiě)法也受不同版本的Oracle環(huán)境不同,這篇文章主要介紹了oracle中sql 正則怎么寫(xiě),需要的朋友可以參考下
    2023-04-04
  • 深入探討:Oracle中如何查詢正鎖表的用戶以及釋放被鎖的表的方法

    深入探討:Oracle中如何查詢正鎖表的用戶以及釋放被鎖的表的方法

    本篇文章是對(duì)Oracle中查詢正鎖表的用戶以及釋放被鎖的表的方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • Oracle數(shù)據(jù)庫(kù)ORA 54013錯(cuò)誤的解決辦法

    Oracle數(shù)據(jù)庫(kù)ORA 54013錯(cuò)誤的解決辦法

    ORA 54013 不允許對(duì)虛擬列執(zhí)行INSERT 操作,這是Oracle 11 的新特性。接下來(lái)通過(guò)本文給大家介紹oracle數(shù)據(jù)庫(kù)ORA 54013錯(cuò)誤的解決辦法,非常不錯(cuò)具有參考借鑒價(jià)值,感興趣的朋友一起看看吧
    2016-10-10
  • 詳解Oracle 中實(shí)現(xiàn)數(shù)據(jù)透視表的幾種方法

    詳解Oracle 中實(shí)現(xiàn)數(shù)據(jù)透視表的幾種方法

    這篇文章主要介紹了詳解Oracle 中實(shí)現(xiàn)數(shù)據(jù)透視表的幾種方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • Oracle數(shù)據(jù)IMP和EXP命令用法詳解

    Oracle數(shù)據(jù)IMP和EXP命令用法詳解

    這篇文章主要給大家介紹了關(guān)于Oracle數(shù)據(jù)IMP和EXP命令用法詳解的相關(guān)資料,我們可以使用Oracle自帶的exp、imp命令來(lái)進(jìn)行數(shù)據(jù)庫(kù)備份,imp和exp稱之為導(dǎo)入導(dǎo)出,這種方式也能快速的導(dǎo)入導(dǎo)出table或數(shù)據(jù)庫(kù),需要的朋友可以參考下
    2023-11-11
  • Oracle單實(shí)例升級(jí)補(bǔ)丁全過(guò)程記錄

    Oracle單實(shí)例升級(jí)補(bǔ)丁全過(guò)程記錄

    這篇文章主要介紹了Oracle單實(shí)例升級(jí)補(bǔ)丁,oracle19.3升級(jí)補(bǔ)丁到19.18,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-08-08
  • Oracle的用戶、角色及權(quán)限相關(guān)操作

    Oracle的用戶、角色及權(quán)限相關(guān)操作

    這篇文章主要介紹了Oracle的用戶、角色及權(quán)限相關(guān)操作,需要的朋友可以參考下
    2017-07-07

最新評(píng)論