전체 글 84

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

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

리스너 포트 찾기

1. ps -ef 리스너 명 찾기 --리스너명 찾기ps -ef | grep LIST-- 상태확인lsnrctl status 리스너명 --포트 정보 및 상태 확인2. sqlplus 사용 (RAC 만 가능)--sqlplus 접속sqlplus / as sysdba SQL > show parameter listenter;--결과확인3. crsctl 사용 (asm일 경우만 사용 가능)crsctl stat res -t--리스너 명 확인4. netstat -anp | grep LISTENERnetstat -anp | grep LISTENER--서버상의 모든 리스너를 확인할 수 있음.

리눅스 2025.07.11

리눅스 DB 서버 환경설정 .bash_profile

오라클 베이스 및 홈 환경변수 설정 및 ALIAS 설정(내가 참고하기위한 글)export TZ=Asia/Seoulexport INST_ID=1export ASM_SID='+ASM${INST_ID}'export ORACLE_BASE=/u01/app/oracleexport GI_HOME=/u01/app/19.0.0.0/dbhome_1export ORACLE_HOME=$ORACLE_BASE/product/19.0.0.0/dbhome_1export ORACLE_UNQNAME=PSTADBexport ORACLE_UNQNAME_LOWER=`echo $ORACLE_UNQnAME | tr A-Z a-z`export ORACLE_SID=${ORACLE_UNQNAME}$INST_IDexport PATH=$PATH:$ORA..

리눅스 2025.07.11

[오라클] 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