Oracle維護常用指令碼

2021-09-01 04:48:24 字數 2058 閱讀 8562

1、檢視表空間使用情況

select b.file_id  檔案id,

b.tablespace_name  表空間,

b.file_name     物理檔名,

b.bytes / 1024 / 1024       總兆數,

(b.bytes - sum(nvl(a.bytes, 0))) / 1024 / 1024   已使用m,

sum(nvl(a.bytes, 0)) / 1024 / 1024        剩餘m,

sum(nvl(a.bytes, 0)) / (b.bytes) * 100 剩餘百分比   from dba_free_space a,

dba_data_files b   where a.file_id = b.file_id   group by b.tablespace_name,

b.file_name,

b.file_id,

b.bytes   order by b.tablespace_name;

1、給表空間新增資料檔案

alter tablespace 空間名 add datafile 

'/dev/rdata_1g_21' size 1000m autoextend off,

'/dev/rdata_1g_25' size 1000m autoextend off,

'/dev/rdata_1g_22' size 1000m autoextend off;

2、修改在11g中無法匯出空表的問題

在sqlplus中,執行如下命令:

sql>alter system set deferred_segment_creation=false;

檢視:sql>show parameter deferred_segment_creation;

1)檢查oracle系統臨時表空間大小: 

select sum(bytes)/1024/1024 "temp size(m)" from dba_temp_files where tablespace_name='temp'; 

2)查詢undo表空間大小 

select sum(bytes)/1024/1024 "current undo size(m)" from dba_data_files where tablespace_name='undotbs1';

3)查詢sga和pga: 

sql> show parameter sga; 

獲得sga_max_size和sga_target的值 

sql> show parameter pga; 

獲得pga_aggregate_target的值 

現場伺服器是8g記憶體,sga設定為4g,pga設定為1g 

現場伺服器是16g記憶體,sga設定為10g,pga設定為2g 

現場伺服器是32g記憶體,sga設定為20g,pga設定為4g 

修改方法: 

pfile: 

sga_max_size=4g 

sga_target=4g 

pga_aggregate_target=1g 

spfile: 

sql> alter system set sga_max_size=4g scope=spfile; 

sql> alter system set sga_target=4g scope=spfile; 

sql> alter system set pga_aggregate_target=1g scope=spfile;

檢視使用者表空間配額

select * from user_ts_quotas;

更改使用者的表空間限額:

全域性:grant unlimited tablespace to abc;

針對某個表空間:

alter user abc quota unlimited on test;

**:revoke unlimited tablespace from abc;

alter user abc quota 0 on test;

常用日誌維護指令碼

日誌格式 2015 01 03 22 13 53 error 30310 0 open usr local nginx logs nginx.pid failed 2 no such file or directory 2015 01 03 22 15 54 notice 31090 0 signa...

Oracle 常用指令碼

查詢當前連線數 select count from v session select username,machine,program,status,count machine as 連線數量 from v session where username cotsdev group by userna...

oracle 常用指令碼

substr 取得字串中指定起始位置和長度的字串 instr 判斷其是否含有指定的字元 replace 替換字元 create table table 1 as select from table 2 where 1 0 建表只複製表結構 表新增預設值 alter table table 1 mod...