清理Oracle歷史資料的準備工作

2021-08-26 09:48:19 字數 1583 閱讀 3883

客戶要求近期對現網的2個專案的資料庫中的歷史資料進行清理,於是整理了下應用中的段使用情況,主要是看錶段情況,使用的指令碼如下。

create or replace procedure get_tab_rows

as--drop table tabsrow

--create global temporary table tabsrow (name varchar2(30),rowsnum number) on commit delete rows;

--create table tabsrow (name varchar2(30),rowsnum number) ;

v_sql varchar2(300);

begin

execute immediate 'truncate table tabsrow';

for x in (select owner,table_name from dba_tables where owner='***' and table_name<>'test') loop

v_sql:='insert into tabsrow select '''||x.table_name||''' ,count(1) from '||x.owner||'.'||x.table_name;

execute immediate v_sql;

end loop;

commit;

end;

/exec get_tab_rows;

select a.owner,

a.table_name,

--b.segment_name,

a.tablespace_name,

b.bytes/1024/1024 as "size(mb)",e.rowsnum,

--b.blocks,

--c.table_name,

c.partitioning_type,

d.column_name

from dba_tables a

left join (select b.segment_name, sum(b.bytes) bytes, sum(b.blocks) blocks

from dba_segments b

where b.owner = '***'

and b.segment_type not in ('index')

group by b.segment_name) b on a.table_name = b.segment_name

left join dba_part_tables c on a.table_name = c.table_name

left join dba_part_key_columns d on d.owner = '***'

and a.table_name = d.name

left join tabsrow e on a.table_name=e.name

where a.owner = '***' order by "size(mb)" desc;

drop procedure get_tab_rows;

drop table tabsrow;

-the end-

清理Oracle歷史資料的準備工作

客戶要求近期對現網的2個專案的資料庫中的歷史資料進行清理,於是整理了下應用中的段使用情況,主要是看錶段情況,使用的指令碼如下。create or replace procedure get tab rows as drop table tabsrow create global temporary ...

Splunk 索引自動清理歷史資料

定位配置檔案,在splunk安裝目錄下搜尋檔案 indexes.conf 在要自動清理的索引配置下新增 frozentimeperiodinsecs 64000000 其中 64000000 為從當前往前推的秒數,時間超過此節點的資料轉換為凍結狀態,預設直接刪除。示例 索引windows的本地配置 ...

oracle歷史資料庫恢復

最近在處理oracle 10備份的資料庫指令碼時,出現了很多問題,但是經過一下午的各種嘗試都一一破解,很費力,現在都記錄下 前提條件 win7系統 已安裝好oracle 10資料庫 備份歷史資料庫指令碼 這裡假定為demo.dmp 恢復步驟如下 1 建立表空間 在cmd視窗中,輸入 sqlplus ...