728x90

-- ORA-01723 : zero-length columns are not allowed

뷰를 테이블로 생성 시 발생하는 에러로 뷰 컬럼의 길이가 0인 경우 발생 

 

CREATE TABLE test.test1
AS 
SELECT 
cast(NULL as varchar2(10)) AS ID
, cast(NULL as varchar2(10)) AS NM
, cast(NULL as varchar2(10)) AS DID1
, cast(NULL as varchar2(10)) AS NM1
, cast(NULL as varchar2(10)) AS ID2
, cast(NULL as varchar2(10)) AS NM2
,CD
,CD_NM
FROM test .INFO;

728x90
728x90

-- JOB 소유자 계정에서 BROKEN 시

EXECUTE dbms_job.broken(11, TRUE); 
EXECUTE dbms_job.broken(12, TRUE); 
EXECUTE dbms_job.broken(49, TRUE);

 

-- SYSDBA 계정에서 다른 계정 소유 JOB BROKEN 시

exec dbms_ijob.broken(11,true);
exec dbms_ijob.broken(29,true);
exec dbms_ijob.broken(69,true);
exec dbms_ijob.broken(12,true);

 

728x90
728x90

SELECT MAX( parsing_schema_name ) parsing_schema_name ,

MAX( MODULE ) MODULE ,

MAX( s.sql_id ) sql_id ,

COUNT( s.exact_matching_signature ) literal_sql_cnt ,

ROUND( SUM( buffer_gets ) /sum( s.executions ) , 2 ) buffer_avg ,

ROUND( SUM( elapsed_time )/1000000 /sum( s.executions ) , 2 ) elapsed_avg ,

ROUND( SUM( rows_processed ) /sum( s.executions ) , 2 ) rows_processed ,

SUM( s.executions ) executions ,

ROUND( SUM( cpu_time ) /max( cpu_time_total ) *100 , 2 ) ratio_cpu ,

ROUND( SUM( elapsed_time ) /max( elapsed_time_total ) *100 , 2 ) ratio_elapsed ,

COUNT( DISTINCT s.plan_hash_value ) plan_cnt ,

substr_sqltext sql_text

FROM (

SELECT s.parsing_schema_name ,

s.module ,

s.sql_id ,

s.hash_value ,

s.plan_hash_value ,

s.address ,

s.sql_text substr_sqltext,

s.executions ,

s.buffer_gets ,

s.disk_reads ,

s.rows_processed ,

s.cpu_time ,

s.elapsed_time ,

s.force_matching_signature ,

s.exact_matching_signature ,

ROUND( (s.buffer_gets / s.executions) , 1 ) lio ,

ROUND( (s.elapsed_time / s.executions) /1000000 , 1 ) elapsed_sec ,

ROUND( (s.cpu_time / s.executions) /1000000 , 1 ) cpu_sec ,

SUM( s.cpu_time ) over( ) cpu_time_total ,

SUM( s.elapsed_time ) over( ) elapsed_time_total

FROM v$sqlarea s

where s.executions > 0

) s

WHERE s.executions > 0

AND s.force_matching_signature <> exact_matching_signature

AND s. parsing_schema_name NOT IN ( 'SYS' , 'SYSTEM' , 'SYSMAN' )

GROUP BY s.force_matching_signature, substr_sqltext

HAVING COUNT( s.exact_matching_signature ) >= 2

ORDER BY literal_sql_cnt DESC

728x90
728x90

** FK TABLE -> TRUNCATE X

ORA-02266: unique/primary keys in table referenced by enabled foreign keys

ALTER TABLE TABLE_NAME DISABLE PRIMARY KEY CASCADE;
ALTER TABLE TABLE_NAME ENABLE CONSTRAINT FK1ABB73AAB9B989D;

 

-- 제약조건 조회
SELECT * FROM DBA_CONSTRAINTS
WHERE TABLE_NAME = 'TABLE_NAME';

 

-- 해당 컬럼 조회
SELECT * FROM DBA_CONS_COLUMNS
WHERE TABLE_NAME = 'TABLE_NAME';

728x90
728x90

 

-- 통계정보 확인

SELECT * FROM DBA_AUTOTASK_OPERATION;

 

-- 통계정보 수집 기능 OFF
begin
dbms_auto_task_admin.disable(
client_name => 'auto space advisor',
operation => NULL,
window_name => NULL
);
end;
/

begin
dbms_auto_task_admin.disable(
client_name => 'sql tuning advisor',
operation => NULL,
window_name => NULL
);
end;
/

begin
dbms_auto_task_admin.disable(
client_name => 'auto optimizer stats collection',
operation => NULL,
window_name => NULL
);
end;
/

728x90
728x90


ALTER TABLE TABLE_NAME SPLIT PARTITION PARTITION_NAME AS ('') INTO (PARTITION 추가할 파티션 이름, PARTITION 현재 MIN PARTITION NAME);

 

EX)

현재 MIN PARTITION NAME : MIN1, 범위: 20000201
추가할 MIN PARTITION NAME : MIN2, 범위 : 20000101

ALTER TABLE TABLE_NAME SPLIT PARTITION MIN1 AS (' 20000101 ') INTO (PARTITION MIN2 , PARTITION MIN1);

 

 

728x90
728x90

ORA-14260 incorrect physical attribute specified for this partition

HASH PARTITION NOLOGGING 옵션 사용 안됨.

 

ALTER TABLE TABLE_NAME MOVE PARTITION PARTITION_NAME TABLESPACE TABLESPACE_NAME 

PARALLEL 32;

 

ALTER INDEX INDEX_NAME REBUILD PARTITION PARTITION_NAME TABLESPACE TABLESPACE_NAME PARALLEL 32;

728x90

'ORACLE' 카테고리의 다른 글

DEFAULT 통계정보 수집 기능 확인 및 OFF  (0) 2024.05.27
MIN PARTITION SPLIT, 추가  (0) 2024.03.04
AQ table MOVE TABLESPACE  (1) 2024.02.21
ORA-31693 ORA-06502  (0) 2024.01.25
전화번호 문자 제거  (0) 2023.11.17
728x90


-- AQ table (Advanced Queuing table)
일반 DDL 명령어 X

 

-- TABLE 조회
SELECT OWNER, INDEX_NAME, INDEX_TYPE, TABLE_NAME,TABLESPACE_NAME FROM DBA_INDEXES 

WHERE INDEX_TYPE LIKE 'IOT%';

VERSION 10.2.0.5 까지
EXEC MOVE_AQT.MOVE('<OWNER>','<QUEUE_TABLE_NAME>', '<TABLESPACE_NAME>');

VERSION 11.2.0.3 까지
BEGIN
MOVE_QT_PKG.MOVE_QUEUE_TABLE('OWNER','QUEUE_TABLE_NAME','FROM_TABLESPACE','TO_TABLESPACE');
END;
/


How To Move An IOT Table To Another Tablespace (Doc ID 453997.1)


-- ERROR 확인 
show errors

728x90

'ORACLE' 카테고리의 다른 글

MIN PARTITION SPLIT, 추가  (0) 2024.03.04
ORA-14260 incorrect physical attribute specified for this partition  (1) 2024.03.04
ORA-31693 ORA-06502  (0) 2024.01.25
전화번호 문자 제거  (0) 2023.11.17
HCC COMPRESS  (0) 2023.10.27
728x90
oracle@rac02:/home/> impdp sys tables=test.test directory=DATAPUMP \
> dumpfile=expdp_test240124.dmp \
> cluster=n \
> content=DATA_ONLY \
> job_name=impdp_test240124 \
> logfile=impdp_test240124.log 

Import: Release 11.2.0.4.0 - Production on Wed Jan 24 16:13:43 2024

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.
Password: 

Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
Data Mining and Real Application Testing options
Master table "SYS"." impdp_test240124" successfully loaded/unloaded
Starting "SYS"." impdp_test240124":  sys/******** AS SYSDBA tables= test.test
directory=DATAPUMP dumpfile= expdp_test240124.dmp cluster=n content=DATA_ONLY job_name= impdp_test240124
logfile= impdp_test240124 .log 
Processing object type TABLE_EXPORT/TABLE/TABLE_DATA
ORA-31693: Table data object "test"."test" failed to load/unload and is being skipped due to error:
ORA-06502: PL/SQL: numeric or value error
Job "SYS"." impdp_test240124" completed with 1 error(s) at Wed Jan 24 16:14:08 2024 elapsed 0 00:00:12

 

Bug 18665004 - ORA-31693/ORA-6502 from Datapump import (impdp) into an existing table having a LONG or LONG RAW column (Doc ID 18665004.8)

12.2 하위버전 버그!!!

 

-- 해결방안 

INDEX 싹 다 지우고 TABLE만 생성한 상태에서 IMPDP시 데이터 정상 인입됨.

후에 INDEX 생성!

728x90

'ORACLE' 카테고리의 다른 글

ORA-14260 incorrect physical attribute specified for this partition  (1) 2024.03.04
AQ table MOVE TABLESPACE  (1) 2024.02.21
전화번호 문자 제거  (0) 2023.11.17
HCC COMPRESS  (0) 2023.10.27
ORA-01722 데이터 타입 상이할 경우  (0) 2023.05.30
728x90

-- 파티션 테이블 조회

SELECT TABLE_OWNER, TABLE_NAME, PARTITION_NAME, COMPRESSION, COMPRESS_FOR
FROM DBA_TAB_PARTITIONS;

 

-- 일반 테이블 조회 
SELECT OWNER, TABLE_NAME, COMPRESSION, COMPRESS_FOR
FROM DBA_TABLES;

 

-- 파티션 테이블 압축
ALTER TABLE TABLE_NAME MOVE PARTITION PARTITON_NAME COMPRESS FOR QUERY LOW;
ALTER TABLE TABLE_NAME MOVE PARTITION PARTITON_NAME COMPRESS FOR QUERY HIGH;
ALTER TABLE TABLE_NAME MOVE PARTITION PARTITON_NAME COMPRESS FOR ARCHIVE LOW;
ALTER TABLE TABLE_NAME MOVE PARTITION PARTITON_NAME COMPRESS FOR ARCHIVE HIGH;

728x90

'ORACLE' 카테고리의 다른 글

ORA-31693 ORA-06502  (0) 2024.01.25
전화번호 문자 제거  (0) 2023.11.17
ORA-01722 데이터 타입 상이할 경우  (0) 2023.05.30
DEPENDENCY CHECK  (1) 2023.05.26
DB LINK 생성/조회  (0) 2023.03.31

+ Recent posts