顯示具有 Oracle 標籤的文章。 顯示所有文章
顯示具有 Oracle 標籤的文章。 顯示所有文章

2020/01/30

Published 1月 30, 2020 by with 0 comment

RHEL7 Oracle開機啟動/關閉設定方式

RHEL7 Oracle開機啟動/關閉設定方式:

使用Systemctl start/stop dbora

Read More

2014/07/24

Published 7月 24, 2014 by

Create partition Table/Index

Create partition Table/Index
1.      確認是否需要新增Table/Index Tablespace
2.      確認空間是否足夠
3.      Create Partition table
4.      Split Partition
5.      Create Partition Index
6.      確認建立的Partition(找出最大的Partition)

一、產生新的 Table/index Tablespace語法(自行確認是否要新增)
CREATE TABLESPACE STGC5_TRG_2015Q1 DATAFILE
  '/rptdata1/c5prpt/STGC5_TRG_2015Q1_01.dbf' SIZE 500M AUTOEXTEND ON NEXT 100M MAXSIZE 32000M,
  '/rptdata2/c5prpt/STGC5_TRG_2015Q1_02.dbf' SIZE 500M AUTOEXTEND ON NEXT 100M MAXSIZE 32000M,
  '/rptdata3/c5prpt/STGC5_TRG_2015Q1_03.dbf' SIZE 500M AUTOEXTEND ON NEXT 100M MAXSIZE 32000M,
  '/rptdata4/c5prpt/STGC5_TRG_2015Q1_04.dbf' SIZE 500M AUTOEXTEND ON NEXT 100M MAXSIZE 32000M
LOGGING
ONLINE
PERMANENT
EXTENT MANAGEMENT LOCAL AUTOALLOCATE
BLOCKSIZE 8K
SEGMENT SPACE MANAGEMENT AUTO
FLASHBACK ON;

二、確認Tablespace空間大小:
select t.tablespace_name ,avg(d.bytes/d.maxbytes)*100 as Used_Rate,sum(d.maxbytes)/1024/1024/1024 as max_g,sum(d.bytes)/1024/1024/1024 as Used_g,
       (sum(d.maxbytes)-sum(d.bytes))/1024/1024/1024 as free_space_g
FROM DBA_TABLESPACES T,DBA_DATA_FILES D
WHERE T. TABLESPACE_NAME =D. TABLESPACE_NAME and d.maxbytes!=0 group by t.tablespace_name
ORDER BY Free_space_g

三、增加Partition Table:

1.日期格式:
select 'ALTER TABLE '||TABLE_OWNER||'.'||TABLE_NAME||' ADD PARTITION P2015Q1 VALUES LESS THAN (''20150401 000000'') TABLESPACE DWC5_TBL;'
from dba_tab_partitions t where table_owner='DWC5' AND PARTITION_NAME='P2014Q1';

結果:
ALTER TABLE DWC5.CUT_TIME_WIP ADD PARTITION P2015Q1 VALUES LESS THAN ('20150401 000000') TABLESPACE DWC5_TBL;


2.時間格式:
select 'ALTER TABLE '||TABLE_OWNER||'.'||TABLE_NAME||' ADD PARTITION P2015Q1 VALUES LESS THAN TO_DATE('' 2015-04-01 00:00:00'', ''SYYYY-MM-DD HH24:MI:SS'', ''NLS_CALENDAR=GREGORIAN'') TABLESPACE DWC5_TBL;'
from dba_tab_partitions t where table_owner='DWC5' AND PARTITION_NAME='P2014Q1';

結果:
ALTER TABLE DWC5.CUT_TIME_WIP ADD PARTITION P2015Q1 VALUES LESS THAN TO_DATE(' 2015-04-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN') TABLESPACE DWC5_TBL;

四、Split Partition
SELECT 'ALTER TABLE '||TABLE_OWNER||'.'||TABLE_NAME||' SPLIT PARTITION CTHI_MAXVALUE (TO DATE(''20170101 000000'') INTO (PARTITION '
||PARTITION_NAME|| ', PARTITION CTHI_MAXVALUE TABLESPACE) ' ||TABLESPACE_NAME|| ';' from dba_tab_partitions t
where table_owner='C5PROD' AND PARTITION_NAME LIKE '%2015Q4';

結果:
ALTER TABLE C5PROD.FWAMTCOMPTRACKHISTORY SPLIT PARTITION CTHI_MAXVALUE (TO DATE('20170101 000000') INTO (PARTITION CTHI_2015Q4, PARTITION CTHI_MAXVALUE) TABLESPACE C5_PTT_CTHI10;

五、增加Partition Index
每季增加:
SELECT * FROM (SELECT 'ALTER INDEX ' || OWNER || '.' || SEGMENT_NAME || ' REBUILD PARTITION P2015Q4 TABLESPACE= ' || TABLESPACE_NAME || ';'  from dba_segments 
where tablespace_name='DWC5_IDX' AND PARTITION_NAME='P2014Q4');

結果:
ALTER INDEX DWC5.XPKCUT_TIME_WIP_P REBUILD PARTITION P2015Q4 TABLESPACE= DWC5_IDX;

一次找出一整年(Partition table要先建立好)
SELECT 'ALTER INDEX ' || INDEX_NAME || ' REBUILD PARTITION '||PARTITION_NAME|| ' TABLESPACE '||TABLESPACE_NAME|| ';'
FROM ALL_IND_PARTITIONS WHERE INDEX_OWNER='STGC5' AND PARTITION_NAME LIKE '%2014Q%';

結果:
ALTER INDEX IDX_COMPDLTYPETIME_600A REBUILD PARTITION P2014Q1 TABLESPACE STGC5_TRG_IDX_2014Q1;

六、找出最大的Partition
SELECT INDEX_NAME,max(PARTITION_NAME) FROM ALL_IND_PARTITIONS WHERE INDEX_OWNER='STGC5'  group by INDEX_NAME order by max(PARTITION_NAME);


參考資料:

http://docs.oracle.com/cd/E11882_01/server.112/e25523/part_admin002.htm
Read More

2014/05/23

Published 5月 23, 2014 by

DB File/Tablespace Size Monitor

查看每個File的使用率
SELECT T.TABLESPACE_NAME,D.FILE_NAME,D.AUTOEXTENSIBLE,D.BYTES/1024/1024/1024 as USED_G,D.MAXBYTES/1024/1024/1024 AS MAX_G,D.STATUS,(d.bytes/d.maxbytes)*100 AS UseRate
FROM DBA_TABLESPACES T,DBA_DATA_FILES D
WHERE T. TABLESPACE_NAME =D. TABLESPACE_NAME and d.maxbytes!=0 ORDER BY UseRate desc

查看Tablespace的平均使用率及剩餘空間
select t.tablespace_name ,avg(d.bytes/d.maxbytes)*100 as Used_Rate,sum(d.maxbytes)/1024/1024/1024 as max_g,sum(d.bytes)/1024/1024/1024 as Used_g,
       (sum(d.maxbytes)-sum(d.bytes))/1024/1024/1024 as free_space_g
FROM DBA_TABLESPACES T,DBA_DATA_FILES D
WHERE T. TABLESPACE_NAME =D. TABLESPACE_NAME and d.maxbytes!=0 group by t.tablespace_name
ORDER BY Free_space_g
Read More

2014/05/16

Published 5月 16, 2014 by

DB常用指令

Create Function:

CREATE INDEX DWPIA.IDX_SAP_STB_MTIDX ON DWPIA.SAP_STB
(MTIDX, RDATE)
LOGGING
TABLESPACE DWC5_IDX
NOPARALLEL online;

CREATE TABLESPACE C5_SYS_DATA DATAFILE '+DBDATA/c5tasm/datafile/C5_SYS_DATA.dbf' SIZE 5M AUTOEXTEND ON NEXT 5M MAXSIZE UNLIMITED;

CREATE USER C5TST3 IDENTIFIED BY C5TST3 ACCOUNT UNLOCK;

Drop Function:

DROP TABLESPACE tspace INCLUDING CONTENTS AND DATAFILES;

Grant Function:

GRANT RESOURCE TO C5TST3;
GRANT CREATE SESSION TO C5TST3
Read More

2014/04/02

Published 4月 02, 2014 by

Oracle Listener 教學

Oracle Listener Status教學

Listener啟動/關閉
Listener啟動在不同的Port
Oracle Listener Help
Client TNS設定

Read More

2014/03/20

Published 3月 20, 2014 by

Oracle Archive log

Oracle Archive log教學
DB:Oracle 10G R2
Read More

2014/03/17

Published 3月 17, 2014 by

OEM Server/Agent Install

OEM Server/Agent Install:

前置工作
安裝OEM Server 10.2.0.3
OEM升級10.2.0.5
OEM升級Agent
Client Agnet安裝/移除
OEM/OMS/Agent日常維護指令
安裝過程中的錯誤

Server:Redhat 5.4
OEM Server:10.2.0.3升級10.2.0.5
Agent: 10.2.0.3升級10.2.0.5

Read More

2014/02/27

Published 2月 27, 2014 by

JOB Lock & job_queue_processes

系統出現ORA-00054: resource busy and acquire with NOWAIT specified,時間點約在22:00:36分,猜測應該是在做Analysis的時候,有lock住檔案。

1.Check Job是否在Running
2.Stop job
3.Kill job session
4.Check job status
5.Start Job

若不讓job暫時啟動起來:
1.Check Jobs啟動數量
2.job_queue_processes = 0;
3.工事處理完之後,job_queue_processes = original_value;

Read More

2014/01/22

Published 1月 22, 2014 by

PLSQL常用指令

PLSQL常用指令

Read More

2014/01/17

Published 1月 17, 2014 by

RMAN常用指令

1、SHOW命令:
顯示rman配置: RMAN> show all;  查詢問前的設定

更改設定:
RMAN>CONFIGURE CONTROLFILE AUTOBACKUP ON;

還原成預設值:
RMAN>CONFIGURE CONTROLFILE AUTOBACKUP CLEAR;

查詢備份時間及備份大小:
select fname, round(bytes/1024/1024) ,bs_completion_time,df_ckp_mod_time,df_tablespace  from v$backup_files where  df_tablespace like '%C5%' order by df_ckp_mod_time;



2、REPORT命令:
   2.1、RMAN> report schema                        報告目標數據庫的物理結構;
   2.2、RMAN>report need backup days=3;            報告最近3天沒有被備份的數據文件;
   2.3、RMAN> report need backup days 3 tablespace users;   在USERS表空間上3天未備份的數據文件;
   2.4、RMAN> report need backup incremental 3;    報告恢復數據文件需要的增量備份個數超過3次的數據文件;
   2.5、RMAN> report need backup redundancy 2 database;  報告備份文件低於2份的所有數據文件;
            RMAN>report need backup redundancy=2;
   2.6、RMAN> report need backup recovery window of 6 days;    報告文件報表的恢復需要超過6天的歸檔日誌的數據文件;
   2.7、RMAN> report unrecoverable;      報告數據庫所有不可恢復的數據文件;
   2.8、RMAN> report obsolete redunndancy 2; 報告備份次數超過2次的陳舊備份;
   2.9、RMAN>report obsolete;          報告多余的備份;

3、LIST命令:列出備份信息
   3.1、列出數據文件備份集
        RMAN>list backup;         列出詳細備份;
        RMAN>list expired backup;     列出過期備份;
        RMAN> list backup of database;     列出所有數據文件的備份集;
        RMAN> list backup of tablespace user01; 列出特定表空間的所有數據文件備份集;
   3.2、RMAN> list backup of controlfile     列出控制文件備份集;
   3.3、RMAN> list backup of archivelog all      列出歸檔日誌備份集詳細信息;
            RMAN>list archivelog all;      列出歸檔日誌備份集簡要信息
   3.4、RMAN> list backup of spfile              列出SPFILE備份集;
   3.5、RMAN> list copy of datafile 5        列出數IC報價網據文件映像副本;
   3.6、RMAN> list copy of controlfile           列出控制文件映像副本;
   3.7、RMAN> list copy of archivelog all    列出歸檔日誌映像副本;
   3.8、RMAN> list incarnation of database       列出對應物/列出數據庫副本;
   3.9、RMAN>list backup summary;    概述可用的備份;
                B表示backup
                F表示FULL
                A表示archive log
                0 1表示incremental backup
                S說明備份狀態(A AVAILABLE   X EXPIRED )
   
   3.10、RMAN>list backup by file    按備份類型列出備份;
                   按照數據文件備份,歸檔日誌備份,控制文件備份,服務器參數文件備份 列出

4、CROSSCHECK命令:校驗備份信息
   4.1、RMAN> crosscheck backup             核對所有備份集;
   4.2、RMAN> crosscheck backup of database      核對所有數據文件的備份集;
   4.3、RMAN> crosscheck backup of tablespace users      核對特定表空間的備份集;
   4.4、RMAN> crosscheck backup of datafile 4    核對特定數據文件的備份集;
   4.5、RMAN> crosscheck backup of controlfile   核對控制文件的備份集;
   4.6、RMAN> crosscheck backup of spfile    核對SPFILE的備份集;
   4.7、RMAN> crosscheck backup of archivelog sequence 3 核對歸檔日誌的備份集;
   4.8、RMAN> crosscheck copy               核對所有映像副本;
   4.9、RMAN> crosscheck copy of database       核對所有數據文件的映像副本;
   4.10、RMAN> crosscheck copy of tablespace users       核對特定表空間的映像副本;
   4.11、RMAN> crosscheck copy of datafile 6        核對特定數據文件的映像副本;
   4.12、RMAN> crosscheck copy of archivelog sequence 4  核對歸檔日誌的映像副本;
   4.13、RMAN> crosscheck copy of controlfile       核對控制文件的映像副本;
   4.14、RMAN> crosscheck backup tag='SAT_BACKUP';
   4.15、RMAN> crosscheck backup completed after 'sysdate - 2'
   4.16、RMAN> crosscheck backup completed between 'sysdate - 5' and 'sysdate -2 '
   4.17、RMAN> crosscheck backup device type sBT;
   4.18、RMAN> crosscheck archivelog all;
   4.19、RMAN> crosscheck archivelog like '%ARC00012.001'
   4.20、RMAN> crosscheck archivelog from sequence 12;
   4.21、RMAN> crosscheck archivelog until sequence 522;

5、DELETE:刪除備份
   5.1、RMAN> delete obsolete;      刪除陳舊備份;
   5.2、RMAN> delete expired backup; 刪除EXPIRED備份  
   5.3、RMAN> delete expired copy;   刪除EXPIRED副本;
   5.4、RMAN> delete backupset 19;   刪除特定備份集;
   5.5、RMAN> delete backuppiece ''d:\backup\DEMO_19.bak''   刪除特定備份片;
   5.6、RMAN> delete backup      刪除所有備份集;
   5.7、RMAN> delete datafilecopy ''d:\backup\DEMO_19.bak''  刪除特定映像副本;
   5.8、RMAN> delete copy   刪除所有映像副本;
   5.9、RMAN> delete archivelog all delete input;
            RMAN> delete backupset 22 format = ''d:\backup\%u.bak'' delete input
                          在備份後刪除輸入對象;
   5.10 RMAN> delete backupset id; 刪除備份集
Read More