새싹 DBA 74

[오라클] 테이블 스페이스 shrink 데이터파일 shrink

오라클에서 데이터나 테이블이 삭제되어도 recycle bin 에 쌓여있거나 모종의 이유로 실제는 디스크 공간 여유가 있지만 테이블 스페이스가 잡고 있는 용량 만큼 여유량 산정이 안될때가 있다. 그 때 토드의 테이블스페이스 -> 데이터파일 minimize 하는 기능을 사용하는데 이 로직이 뭘까 보다보니 수행하는 명령어가 datafile 을 resize 하는 것이었다. 그래서 토드가 없을 때 이 작업을 어찌하나... 데이터 파일에 실제 사용되고 있는 용량이 얼마인가 계산하고 resize 하는 작업까지 정리해본다. 데이터 파일 resizealter database datafile '/oracle/dbs/toolsORA.dbf' resize 100M;--ASM의 경우ALTER DATABASE DATAFILE..

새싹 DBA/Oracle 2025.08.18

[오라클] 패스워드 틀려서 계정 만료시키는 범인 잡기

unified_audit_trail은 Oracle 12c 이상에서 사용하는 감사(Audit) 로그를 통합해서 보여주는 뷰.이 뷰는 오라클에서 일어난 접속 시도, 로그인 실패, DDL 실행, 권한 변경, 데이터 접근 등을 로그로 저장해주는 테이블 같은 것임.고로 이 뷰로 범인을 색출할 수 있다. SELECT event_timestamp, -- 이벤트 발생 시각 os_username, -- OS에서 로그인한 사용자명 (예: 윈도우 로그인 ID) userhost, -- 접속한 클라이언트 호스트명 or IP return_code, -- 결과 코드 (0: 성공 / 1017: 비번 틀림 / 28000: 계정 잠김 등) action_name ..

새싹 DBA/Oracle 2025.07.24

[오라클] UNDO Tablespace 재사용과 RETENTION GUARANTEE/NOGUARANTEE 완전 정리

UNDO 테이블스페이스가 자동으로 재사용되는 원리RETENTION GUARANTEE와 NOGUARANTEE 차이사용량/상태/설정값 확인용 원샷 쿼리 예제✅ 1️⃣ UNDO 테이블스페이스의 재사용 개념UNDO 테이블스페이스(undotbs)는 커밋되지 않은 트랜잭션의 롤백을 위해, 그리고 쿼리 일관성을 위해 변경 전 데이터를 저장👉 UNDO는 공간을 순환(recycle)해서 재사용하도록 설계되어 있음.커밋되면 undo 블록은 expired 상태로 전환expired undo는 새 트랜잭션이 필요하면 재사용 가능✅ 하지만 재사용이 안 되는 경우ACTIVE 상태: 현재 트랜잭션이 사용 중UNEXPIRED 상태: retention 기간이 지나지 않음 + 공간 여유가 있어 유지✅ 2️⃣ RETENTION GUARA..

새싹 DBA/Oracle 2025.06.30

[오라클] Temp/Undo 실시간 모니터링 쉘 스크립트

-- Temp 테이블스페이스 조회 스크립트-- temp.sqlset timing offset feedback offset lines 1000set pages 1000col session_info heading "SID,Serial#" format a20col "SIZE" format 99,999,999col tablespace_name format a15col module format a50set heading offselect '------[[ 각 User Session별 사용량 ]] --------' from dual;set heading onselect tablespace tablespace_name , to_char(s.sid) || ',' || to_char(s.serial#) sessi..

새싹 DBA/Oracle 2025.06.30

[오라클] Timezone Upgrade 방법

Timezone 이 Upgrade 가 되지 않는다면 낮은 버전으로 인해 Datapump(Impdp) 시 아래와 같이 오류가 날 수 있다. ORA-39405: Oracle Data Pump does not support importing from a source database with TSTZ version 33 into a target database with TSTZ 32.DB 업그레이드시 Timezone 도 같이 Upgrade 되지 않는다. 따라서 별도로 수행해줘야 한다. TimeZone 업그레이드 절차--TimeZone Upgrade 전 Version 확인SELECT * FROM V$TIMEZONE_FILE; -- 업그레이드 수행SQL> @?/rdbms/admin/utluptabdata...

새싹 DBA/Scripts 2025.06.30

[오라클] Asm 영역에 Expdp 덤프 내리기

파일서버에 용량이 없을때 Asm에 dump를 내리는 방법.✅ 1. grid 계정으로 서버 접속 - Asm 영역의 서버 유저는 grid이므로✅ 2. ASM에 디렉토리 생성 (ASMCMD)방법 ①: asmcmd 사용(서버) —추천asmcmdASMCMD> cd +DATA/DIGWDB/ASMCMD> mkdir dpdump방법 ②: SQL에서 DBMS_DISKGROUP 사용 (11g 이상)-- SYS 권한 필요exec dbms_diskgroup.create_directory('DATA/DIGWDB','dpdump');✅ 3. Oracle에서 DIRECTORY 객체 생성 (SQL)CREATE OR REPLACE DIRECTORY dp_dir AS '+DATA/DIGWDB/dpdump';—권한 있을시 생략가능GRA..

새싹 DBA/Oracle 2025.06.20

[오라클] app 계정 profile 설정

app와 같은 응용 관련 계정같은 경우 한번 password를 정하게되면 바꾸기도 힘들고 계속 운용되어야하기 때문에 거의 모든 프로젝트에서 profile을 별도로 생성하고 부야하여 관리한다. 보안에 위배될수 있지만 그렇지 않으면 관리하기가 너무 어렵다.profile 중 설정되어야하는 값idle_time = kernel unlimitedpassword_lifetime = password unlimitedpassword_reuse_time = password unlimited Create Profile Profile_app limitsessions per_user defaultcpu_per_session defaultcpu_per_call defaultconnect_time defaultidle_time u..

새싹 DBA/Oracle 2025.05.27

[오라클] 오라클 RAC scope= spfile sid= '*' 적용안됨

오라클 RAC 환경에서 서버 메모리 증설 작업을 하게되어 sga_max_size, sga_target 파라미터 변경 작업을 하던 중 마주한 문제.ALTER SYSTEM SET SGA_MAX_SIZE=27G scope=spfile sid =‘*’ ;파라미터를 변경했는데도 1번 인스턴스의 파라미터 값이 요지부동인거..이유를 찾아서 pfile 을 열어보니 현재 상황 요약 • DB는 SPFILE로 부팅됨 • ALTER SYSTEM SET sga_max_size = 26G SCOPE=SPFILE SID='*'; 수행했지만 • SPFILE을 PFILE로 내려보니→ *.sga_max_size=...이 아니라→ inst1.sga_max_size=26G 이런 식으로 박힘 • 결과적으로 인스턴스 1만 반영되고 인스턴스 2..

새싹 DBA/Oracle 2025.04.10

[오라클] 메모리 증설 SGA PGA 서버 작업까지

리눅스 서버에서 메모리 증설 후 Oracle SGA/PGA 조정 절차 (완벽 정리)✅ 1. 리눅스 서버에서 할 작업💡 물리적 메모리 증설이 완료된 상태에서 진행 1️⃣ 현재 시스템 메모리 확인free -g # GB 단위로 확인증설전 → 증설후MemTotal: 16384 MB # 기존 16GBMemTotal: 32768 MB # 증설 후 32GB 2️⃣ 리눅스 커널 매개변수 조정 (shmmax, shmall 설정)Oracle은 **공유 메모리(shared memory)**를 사용하므로, shmmax, shmall 값을 조정해야한다. (잘못하면 DB 안올라옴 )vi /etc/sysctl.conf📌 설정 변경 (메모리 32GB 기준 예제)kernel.shmmax = 307698..

새싹 DBA/Oracle 2025.03.21