본문 바로가기

sql

<< 시나리오 12 >> 백업본 안에 redo log file이 없을 때 복구 방식 # Test 전 저번에 복구가 잘됐는지 확인 ▶ startup 시 에러날 경우 ! cp -v backup/noarch/* /u01/app/oracle/oradata/ORA19C 하고 DB 띄우기 # control file, data file 백업본 파일 생성해서 넣어두기(금일 날짜로)  # DB 띄우고 table 생성  # redo 정보 확인select * from v$log;  # log switch 3번 발생시키기 (overwrite 시키기 위해서)  # DB 내리고 장애 유발  # startup▶ open 시점에 에러가 발생한다. # recover 해야 할 file 확인  # data file 정보 확인 ▶online으로 되어있기 때문에 offline으로 떨어뜨려야 한다.  # offline으로 떨.. 더보기
transaction 진행 중인 상태에서 undo data file이 손상되었을 때, 새로운 undo tablespace를 생성해서 해결, 문제되는 undo tablespace 삭제 시에 문제가 발생, temp file 손상 복구, 모든 data, redo, control file이 있는 디스크 손상 복구 ◆ 백업본도 가지지 않고, spfile이 손상되었는데 pfile이 없을 경우  - startup 시 alert log에 초기 파라미터 정보가 다 뜨기 때문에 그거 보면서 생성하면 된다. ◆ DBA는 출근 시 no archive mode일 경우 현재 redo, checkpoint 정보를 기록해놔야 한다. select name, checkpoint_change#,status from v$datafile;select * from v$log;select segment_id, segment_name, owner, tablespace_name,statusfrom dba_rollback_segs;  > transaction 진행 중인 상태에서 undo data file이 손상되었을 때, 새로운 undo tablesp.. 더보기
백업 받지 않은 tablespace 데이터 파일 손상(redo 정보가 있거나 없을 경우), SYSTEM 데이터 파일 손상(백업 이후에 redo 정보가 있거나 없을 경우), undo data file 손상(백업 이후에 redo 정보가 있거나 없을 경우) > 백업 받지 않은 tablespace 데이터 파일 손상(redo 정보가 있을 경우)select tablespace_name, file_name from dba_data_files;  # 샘플 tablespace 생성create tablespace hr_tbs datafile '/u01/app/oracle/oradata/ORA19C/hr_tbs01.dbf' size 10m; # 데이터 파일에 대한 checkpoint 정보 확인select name, checkpoint_change# from v$datafile; ▶ 방금 생성한 tablespace기 때문에 checkpoint가 다르다. select * from v$log;▶ 현재 tablespace 생성할 때 checkpoint 정보는 current한 그.. 더보기
Backup 용어, No Archive Log Mode 백업, 특정한 데이터 파일 손상(백업 이후에 redo에 정보가 있거나 없을 경우) 복구 작업 ex) 만약 shutdown immediate, abort했을 때 에러 발생할 경우   - 에러 코드 : ORA-24324, ORA-01041▶ SYS connection이 끊어져서 발생한 것으로 추정▶ 다시 SYS 재접속 후 startup 하면 정상적으로 DB가 올라간다. ■ DBA (Database Administrator) 주요 역할    - 항상 DB를 사용할 수 있도록 유지하는 것    - DBA는 시스템 장애를 최소화하기 위해 예방 조치를 취할 수 있어야 한다. ■ Failure 범주  - statement failure       - user process failure      - network failure : 장애 시 시스템 엔지니어에게 요청      - instance failure .. 더보기
2025.02.11 Listener 동적,정적 서비스 등록 및 Dedicated Server와 Shared Server 환경에서의 작업 복습)▶ 이런 오류가 났으면 listener가 중단된 상태에서 접속을 하려고 해서 발생한 에러이다. 그래서 꼭 출근하면 listener 상태부터 확인해야 한다.▶ listener를 띄어도 LREG에서 일을 더디게 하기 때문에 디벨로퍼에 접속이 바로 안 된다. 그래서 listener 띄우고 DB에 접속해서 alter system register; 입력하면 바로 서비스 등록하면서 접속이 가능하다.▶ listener를 내려도 로컬에선 접속이 가능하다. sqlplus insa/oracle@192.168.56.110:1521/ora19c sqlplus sys/oracle@192.168.56.110:1521/ora19c as sysdba -- sys role로 접속 시 방법 # service_names = db_n.. 더보기
2025.02.10 FGA(생성,삭제,활성화,비활성화), Autonomous Transaction 선언, (AUD$,FGA_LOG)를 다른 tablespace로 이관작업, Oracle net 서비스 ■ Fine Grained Auditing    - Oracle Enterprise Edition에서 사용하는 감사 기능    - Content를 기준으로 Data Access 모니터    - select, insert, update, delete, merge 감사    - Table이나 View에 있는 하나 이상의 열에 연결 가능    - 프로시저 실행 가능    - dbms_fga 패키지를 사용desc dbms_fga >show parameter audit_trailalter system set audit_trail = none scope=spfile; -- run 상태가 아닐 경우 실행 # FGA 생성  - 패키지 이용-- 샘플 테이블 생성create table hr.empasselect emplo.. 더보기
2025.02.07 Resource 관리, 감사(스키마, 권한) 숙제)1. 패스워드 복합성 함수에 패스워드를 숫자,대문자,소문자,특수문자 포함해서 만들도록 함수 만들기select * from dba_profiles where profile = 'INSA_PROFILE' and resource_type = 'KERNEL'; # RESOURCE(자원) 관리    - SESSIONS_PER_USER : 동일한 유저로 허용되는 동시 session의 수    - IDLE_TIME : 분 단위로 측정한 비활성 시간(ex : 은행 사이트 들어가서 로그인 후 아무것도 안 하면 로그아웃 되는 개념), 만약 10분으로 설정 후 10분 동안 아무 작업이 없을 시 자동으로 kill session이 된다.    - CONNECT_TIME : 분 단위로 접속해서 사용할 수 있는 시간    -.. 더보기
2025.02.06 ROLE 관리(application role 이용), PASSWORD 관리, PROFILE 관리 select * from dba_roles;select * from dba_sys_privs where grantee in('PROG','MGR');select * from dba_tab_privs where grantee in('PROG','MGR');select * from dba_role_privs where granted_role in('PROG','MGR');select * from dba_role_privs where grantee = 'INSA'; >   # 다른 컬럼은 수정이 안 되고 salary만 수정 권한을 주고 싶을 경우grant update(salary,department_id) on hr.employees to insa; -- salary,department_id만 수정 권한 부여.. 더보기