일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- job관리
- postgreql 오브젝트 조회
- 티스토리챌린지
- 실제플랜조회
- Connect Storage Engine
- datadir 변경
- num_index_keys
- autocommit설정
- sqlp합격후기
- 데이터csv생성
- 리눅스
- PROFILE EXPDP
- 통계정보백업
- 통계정보복구
- public synonym EXPDP
- inlist
- Linux
- 오라클인덱스힌트
- mariaDB설치오류
- sqlp시험일정
- 오라클
- ssh접속오류
- sqlp공부방법
- oracle
- mariaDB
- 오블완
- 오라클기동
- MariaDB기본디렉토리변경
- DATABASELINK
- 대량dml튜닝
- Today
- Total
목록DATABASE/Oracle (24)
IT study

인덱스 구성된 컬럼을 사용할때 IN 조건절로 사용하게 되는 경우가 있음 인덱스 구성 컬럼 중 IN 조건절로 쓰이는 컬럼이 액세스 조건으로 사용되는지 필터조건으로 사용되는지에 따라 성능이 다르며 사용되는 경우에 따라 유리한 방법이 있다. ( ex) in 조건 개수가 많지않고 데이터가 여러 블록에 존재하는 경우, 액세스 조건으로 사용시 유리할 수 있음 ) 이럴때 num_index_keys 힌트를 사용하여 in 조건 컬럼을 액세스 조건으로 사용할지 필터 조건으로 사용할지 제어가능하다. -- 인덱스의 n번째 컬럼까지 액세스 조건으로 사용 /*+ num_index_keys(t ix_01 n) */ 개인 운영 노트) num_index_keys 힌트만으론 사용한 인덱스를 강제로 고정하지 않음 얼마전, 속도 저하 쿼리..
오라클 DB 링크 : 로컬 DB와 원격 DB 간 데이터 작업시 사용 로컬 서버 tnsnames.ora 파일에 원격지 DB 접속 정보 추가하여 사용하거나 추가없이 직접 접속 정보를 기술하여 사용할 수 있다. 1. DATABASE LINK 생성 create [public] database link [DBLINK명] connect to [USER NAME] identified by "[USER PASSWORD]" using '(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.0.0)(PORT= 1521)) (CONNECT_DATA=(SERVICE_NAME=[서비스명])))'; * DB 구성에 따라 service_name = [서비스명] 또는 sid = [sid명] 을 사..
--테이블 자동통계정보 수집 기능 테이블 단위 비활성화 begin DBMS_STATS.LOCK_TABLE_STATS('TEST_USER','TBL_PRICE'); end; --테이블 통계잠금해제 begin DBMS_STATS.UNLOCK_TABLE_STATS('TEST_USER','TBL_PRICE'); end; -- 통계정보 확인 select table_name, num_rows, blocks, empty_blocks, chain_cnt, avg_row_len, stale_stats, last_analyzed, sample_size from user_tab_statistics where table_name = 'XTMP_MBER'; select index_name, blevel, leaf_blocks,..

오라클 서버 구축하는 과정에서 여러번의 shutdown 과정이 필요한데, shutdown immediate는 잘되나 shutdown 시 hang 걸림을 확인 shutdown 명령어 날렸는데 오랫동안 반응이 없음 /engn/oracle/diag/rdbms/orcldev/ORCLDEV/trace alert_sid.log trace 확인 결과, 활성화된 프로세스가 존재하여 대기중인 상태 60분간 대기하다 ora-01013: user requested cancel of current 에러 뱉고 shutdown 중단 다른 세션에서 shutdown abort 로 해결함 --롤백없이 모든 명령 종료 shutdown abort; --제한모드로 시작, DB정상시작 & 다른 유저 접속 불가 startup restrict;..

오라클의 인덱스 리빌드 와 DROP 하고 다시 재생성하는 것에 대해서 각각의 방법이 어떻게 진행되는지, 어떤 장/단점이 있는지 알아보았습니다. 인덱스 생성 모니터링 --temp 테이블스페이스 임시세그먼트 생성 select * from V$SORT_USAGE; --임시 세그먼트 인덱스 테이블스페이스로 이관 select * from DBA_SEGMENTS where segment_type = 'TEMPORARY'; 인덱스 리빌드 테이블스페이스에 임시 인덱스 세그먼트 생성 기존 인덱스의 지정 테이블스페이스에 이관 기존 인덱스 드랍 후 임시 인덱스를 기존 인덱스로 바꿈 ( 이 작업을 위해 테이블스페이스에 2개의 인덱스가 잠시 공존함) => 리빌드를 진행하게 된다면, temp tablespace 와 인덱스 지정 ..

앞서 파라미터 파일에 관하여 알아봤습니다.이번에는 파일 수정 방법을 알아보겠습니다. DB 서버를 협력회사에 오픈하게 되면서, 특정 테이블의 select 권한만 가진 유저를 생성하였고,AUD$ 테이블에서 해당 유저가 실행한 ddl, dml 문의 sqltext 확인을 위해 audit_trail 파라미터 변경을 진행했습니다. 이때 진행한 파라미터 수정 방법을 기록해보겠습니다. 1. SPFILE, PFILE 인지 확인 우선 운영중인 DB가 SPFILE 방식인지 PFILE 방식인지 확인이 필요합니다.SQL> show parameter pfile; -> value 가 빈 값이면 pfile 방식, 값이 있으면 spfile 방식 2. ALTER SYSTEM 명령어를 통한 변경 여부 확인 SQL> select nam..
오라클 파라미터 파일 오라클의 환경을 설정하는 파일로 정적 파라미터파일과 오라클 9i부터 소개된 동적 파라미터 파일이 존재한다. 데이터베이스 기동 시에 파라미터 파일을 참조하여 SGA 및 기타 필요한 환경 구성함 PFILE 정적 파라미터, 오라클 모든 버전에서 사용가능 $ORACLE_HOME/dbs/initSID.ora 텍스트 형식, vi 편집기로 파라미터 수정가능 SPFILE 동적 파라미터, 오라클 .9i 부터 사용가능 $ORACLE_HOME/dbs/spfileSID.ora 바이너리 형태, 편집기로 변경 불가능 : pfile 수정 후 반영하거나 sql 명령어로 수정 파라미터 설정 변경 spfile 재기동 없이 파일 내용 적용 가능하나 조건에 따라서 아래 명령어를 통해 파라미터 변경 가능하다. spfil..
인터벌 파티션 테이블로 생성된 테이블의 일정 보관 기간이 지나면 데이터 삭제가 필요. oracle job 통해 배치 생성하여 주기적으로 데이터 관리 진행함 declare cursor c_del_partition is select object_name as tb_nm, subobject_name as partition_nm from ALL_OBJECTS where owner = [스키마명] and object_type = 'TABLE PARTITION' and generated = 'Y' -- 시스템생성여부 : 인터벌파티션의 경우 자동생성되므로 시스템생성여부가 Y임 and ( object_name = [인터벌파티션테이블명] and created < trunc(sysdate)-10 ) ; --10일보관 ; ..
SYS_CONTEXT : 오라클의 세션정보를 얻어오는 함수로 namespace와 관계된 paramater의 값을 반환한다. 주로 사용하는 namespace는 USERENV USERENV : 현재 세션의 환경 정보를 반환하는 네임스페이스 주로 사용하는 USERENV 파라미터 select sys_context('USERENV','ISDBA') as dba권한사용자여부 , sys_context('USERENV','IP_ADDRESS') as 연결된ip주소 , sys_context('USERENV','SESSIONID') as 세션id , sys_context('USERENV','OS_USER') as os_user , sys_context('USERENV','SID') as sid , sys_context('..

오라클 리눅스 서버 설치 테스트하면서 기존 서버에 있던 테이블들 impdp / expdp 통해 옮기려하는데 아래와 같은 에러남 ORA-14460: only one COMPRESS or NOCOMPRESS clause may be specified 원인은 서버 버전 차이 기존 서버는 oracle 11.2.0.2 신규 서버는 11.2.0.1 해결 impdp 시 transform=segment_attributes:n 옵션 주어 해결됨 하지만 이 옵션을 주면 테이블스페이스가 유저의 Default tablespace로 생성된다.