전체 글 76

RMAN 으로 ARCHIVE LOG 삭제

Archivelog 삭제 방법 파일시스템 상에서 직접 Archivelog File을 삭제해도 상관없으나, RMAN에선 파일시스템에서 삭제된 Archivelog File을 아직 보존하고 있는 상태로 인식해서 RMAN Backup 시 아래와 같은 에러가 나타나는 경우가 있다.RMAN-06059: expected archived log not found, lost of archived log compromises recoverability 이러한 경우 아래와 같이 crosscheck 명령어를 이용하여 실제로 존재하지 않는, 만료된 Archivelog File를 정리해주면 해결이 되지만 RMAN 내부에서 Archivelog를 삭제하는것이 제일 바람직하다. 만료된 Archivelog File 정리RMAN> cro..

새싹 DBA/Oracle 2024.11.15

impdp 시 에러 ORA-00910: specified length too long for its datatype (RAC 추가)

데이터 이관시 ORA-00910 발생 1. 원인 max_string_size 파라미터 설정 값 다름 (default = STANDARD)SELECT NAME, VALUE FROM V$PARAMETER WHERE NAME = 'max_string_size';조회 시 소스 DB => max_string_size = EXTENDED타겟 DB => max_string_size = STANDARD 2. 해결방법** RAC일 경우 startup upgrade 시 ORA-39701 발생. -- rac의 경우 cluster_database = TRUE 로 되어있음 -- parameter 변경 진행SQL > alter system set cluster_database=FALSE scope=spfile sid=’*’ ..

새싹 DBA/Oracle 2024.11.12

RAC 재기동

오라클 RAC 구성된 DB 재기동 절차, 방법1. RAC 노드 환경 확인$crs statatus resource -t  //DB이름, instance 이름 파악, 기동환경.$ crsctl status resource -t1.1 RAC 노드1 종료 절차$ srvctl stop instance -d [DBNAME] -i [1번INSTANCENAME]             //1번 노드 shutdown$ srvctl stop nodeapps -n [1번nodename]    //nodename=hostname$ su - root# $ORA_CRS_HOME/bin/crsctl stop crs 1.2 RAC 노트2 종료 절차 $ srvctl stop instance -d [DBNAME] -i [2번INSTANCE..

카테고리 없음 2024.11.07

[오라클] 파티션 테이블 테이블스페이스 변경, 인덱스 리빌드

1. 파티션 테이블 조회SELECT * FROM DBA_PART_TABLES WHERE OWNER IN ('OWNER');2. 파티션 테이블의 파티션 조회 SELECT * FROM DBA_TAB_PARTITIONS WHERE TABLE_OWNER IN ('OWNER');3. 파티션 인덱스 조회SELECT * FROM DBA_PART_INDEXES WHERE OWNER = 'OWNER';4. 파티션 별 로컬 인덱스 조회SELECT * FROM DBA_IND_PARTITIONS WHERE INDEX_OWNER = 'OWNER';5. 글로벌 파티션 조회SELECT * FROM DBA_INDEXES WHERE TABLE_NAME = 'TABLENAME';6. 파티션 테이블의 DEFAULT TABLESPA..

새싹 DBA/Scripts 2024.10.11

[오라클] asm 디스크 할당 작업

1. ASM DISK 생성 (root 계정)  a. 물리 디스크 확인$ fdisk -l  b. ASM에 할당되지 않은 볼륨을 ASM DISK로 생성$ oracleasm createdisk DATA7 /dev/mapper/vg00-lv_08 2. ASM DISKGROUP 에 DISK 할당 (grid 계정)$ sqlplus / as sysasm-- 마운트되지 않은 disk 확인 SQL> select group_number, name, mount_status, path, total_mb from v$asm_disk where mount_status='CLOSED';-- 마운트 진행SQL> ALTER DISKGROUP DATA ADD DSIK 'dev/oracleasm/disks/DATA7' REBALANCE ..

새싹 DBA/Oracle 2024.10.07

[오라클] undo tablespace 관리

/*************************************************-- OPEN 상태에서 TEMP 테이블스페이스 생성/변경 *************************************************/-- 현재 임시 테이블스페이스 확인(property_value)select *from database_propertieswhere property_name = 'DEFAULT_TEMP_TABLESPACE';-- SORT_AREA_SIZE의 배수가 성능에 효과적(?이란다)-- UNIFORM SIZE를 배수로..select *from v$parameterwhere name like '%sort_area_size%';-- 임시 테이블스페이스 생성create temporary t..

새싹 DBA/Scripts 2024.10.07

[오라클] temp 파일 추가

Temporary(임시) 테이블스페이스는 임시 세그먼트라고 불리는 작업용 디스크 영역을 보관하기 위한 특수한 테이블스페이스입니다. Temp 테이블스페이스에 일반적인 오브젝트(테이블,인덱스)를 저장할 수 없습니다. DBCA를 사용해서 데이터베이스를 생성하면 기본적으로 TEMP라는 이름으로 생성됩니다.TEMP는 데이터베이스의 Sort 작업과 글로벌 임시테이블을 저장하는데 사용됩니다.Default TEMP테이블스페이스가 없으면 SYSTEM 테이블스페이스를 TEMP영역으로 사용하게 됩니다. SYSTEM 테이블스페이스는 DB의 중요한 정보들을 가지고 있는 중요한 테이블스페이스므로 해당 테이블을 TEMP영역으로 사용하게되면 성능상의 문제가 발생한 가능성도 높아지고, SYSTEM테이블스페이스의 단편화 현상이 발생할 ..

새싹 DBA/Oracle 2024.10.07

[오라클] 컬럼 default 비교 시 default collation

컬럼 default 비교 시 default collation 의 차이가 있다고 인식 SELECT * FROM V$PARAMETER WHERE NAME LIKE '%string%'; 조회 시 value, display_value 가 STANDARD 가 아닌 EXTENDED 면 토드로 object 비교 시 컬럼에 collate using_nls_comp 가 붙어있다.  이번 같은 경우 나는  전환 DB 에서 전환 데이터 삽입 시 컬럼 길이 문제가 생길까 싶어 책임님께서 extended 로 설정을 바꿔두신것.  DEFAULT COLLATION ClauseCollation (also called sort ordering) determines if a character string equals, precedes,..

새싹 DBA/Oracle 2024.10.02

ORA-31626 job does not exists 해결

1. dbms_datapump job 를 활용하여 impdp 수행 시 ora-31626 오류 발생권한 및 프로시저 구문 오류 없음을 확인하였지만 지속적으로 작업이 존재하지 않는다는 오류 발생.2. 해결방안프로시저 작성시 SQL > CREATE OR REPLACE PROCEDURE AUTHID CURRENT_USER IS  AUTHID CURRENT_USER 을 넣어주니 정상 작동. 이 부분에 대해선 팀장님과 상의해보았지만 프로시저를 실행하는 시점에서 어떤 스키마로 돌아가는지에 따라 권한 문제가 생겨서 그런듯 하다.

새싹 DBA/Oracle 2024.09.24