Oracle 表空間 資料檔案自動增加

2021-06-01 14:14:58 字數 1449 閱讀 9019

--------執行此指令碼之前需要建立名稱為 datafile_no 的序列 最小值為1 增長量為1 最大值為 10000000

--------預設為在表空間his_data下建立資料檔案。

--------過程建立之後需要進行編譯,編譯成功後,建立job進行呼叫。間隔時間為 trunc(sysdate+1,'dd')+1/24 每天呼叫。

--------並且呼叫時間必須在同步資料的job執行前前兩小時執行。

create or replace procedure temp_1 is

tablespacename varchar(500);

free           number(10);

vs_sql         varchar2(500);

data_file_no   number(4);

begin

free := 0;

select tablespace_name, fz

into tablespacename, free

from (select a.tablespace_name, a.bytes / 1024 / 1024 "總共mb", (a.bytes - b.bytes) / 1024 / 1024 "使用mb",

b.bytes / 1024 / 1024 "空閒mb", round(((a.bytes - b.bytes) / a.bytes) * 100, 2) fz ------使用百分比

from (select tablespace_name, sum(bytes) bytes from dba_data_files group by tablespace_name) a,

(select tablespace_name, sum(bytes) bytes, max(bytes) largest from dba_free_space group by tablespace_name) b

where a.tablespace_name = b.tablespace_name)

where tablespace_name = 'his_data'; ----預設表空間名稱

if free >= 80 then

select data_src.datafile_no.nextval into data_file_no from dual;

vs_sql := 'alter tablespace his_data add datafile ''d:/oracle/product/10.2.0/oradata/dbhouse/his_data' || data_file_no || '.dbf'' size 5m autoextend on next 5m maxsize unlimited';

-----alter中的路徑需要根據本地資料庫的安裝路徑修改

execute immediate vs_sql;

end if;

end temp_1;

移動表空間資料檔案

2011年5月31日 移動表空間資料檔案方法 一 首先啟用介質恢復即開啟歸檔模式,用sys使用者 如果已經開啟則省略該步驟 sql shutdown immediate 資料庫已經關閉。已經解除安裝資料庫。oracle 例程已經關閉。sql startup mount oracle 例程已經啟動。t...

Oracle 1 表空間 資料檔案

增 alter database backup controlfile to trace as e oracle11g oradata orcl control.txt 如果你在增加控制檔案之後出現問題,可能是你的控制檔案版本不一樣。複製貼上讓他們一摸一樣。刪 sql alter database ...

Oracle的表空間 資料檔案 使用者

每乙個oracle資料庫都是由三種型別的檔案組成 資料檔案 data file 日誌檔案 log file 和控制檔案 control file 資料庫的檔案為資料庫資訊提供真正的物理儲存。每個資料庫有乙個或多個物理的資料檔案。邏輯資料庫結構 如表 索引等 的資料物理地儲存在資料庫的資料檔案中,資料...