본문 바로가기

oracle22

oracle 스키마명 없이 조회하기 ( synonym ) oracle 스키마명 없이 조회하기 ( synonym ) A계정에는 실제 데이터를 넣어 놓고, B계정에서 특정 권한만 줘서 조회가 가능하게끔 설정 하려한다. DBA가 있고 관리가 어느정도 되는 업체에서는 스키마와 조회 스키마를 나누어 구성을 많이 한다. [A계정] 에서 B의 스키마명 없이 조회 가능 EX ) SELECT * FROM B.테이블; -> SELECT * FROM 테이블; [대상] B의 전체 테이블 1. B계정의 테이블 권한 주기 [B계정] 나같은 경우에는 모든 테이블 대상이 었으므로 .. 1) B의 전체 테이블 조회 권한을 A에게 주고 싶은 경우 SELECT 'GRANT SELECT ON B.' || TABLE_NAME || ' TO A;' FROM ALL_TABLES WHERE OWNER .. 2021. 2. 24.
SQL튜닝 oracle 툴을 이용하지 않고 실행계획을 보기 1. EXPLAN PLAN STATEMENT 옵티마이저가 주는 실행계획은 차선으로 생각. 실행계획은 만들겠다 EXPLAIN PLAN SET STATEMENT_ID ='TEST1' INTO PLAN_TABLE FOR SELECT A.ENAME, A.DEPTNO, B.DNAME FROM EMP A, DEPT B WHERE A.DEPTNO = B.DEPTNO; 해당 실행 계획이 만들어지고 플랜에 테이블에 플랜이 만들어진다. 그리고 결과를 보려면 SELECT LPAD(' ',2 * (LEVEL-1))||OPERATION as OPERATION, OPTIONS, OBJECT_NAME, POSITION as POS, OBJECT_INSTANCE as INST, ID, PARENT_ID as P_ID FROM PLA.. 2021. 1. 4.
SQL튜닝 Oracle trace 파일 만들기 trace 파일은 메모리, 블럭 등에서 쓰이는 자세한 정보들을 볼 수 있다. iniSID.ora 내에 '_trace_filespublic = true; UNIX> conn /as sysdba show parameter spfile show parameter pfile show parameter user_dump_dest 위에 show 를 검색하여 tace 파일이 떨어지는 경로를 확인 할수 있다. /DBA2/dba06/admin/dba06/udump --alter session set events '10046 trace name context forever, level 12'; //로즈 정보 까지 볼수있다. alter session set tracefile_identifier = 'kyn'; //trace.. 2021. 1. 2.
SQL튜닝 Oralce INDEX SCAN-> FULL TABLE SCAN 튜닝 "index만 탄다고 무조건 좋은건 아니다." 를 보여주는 예제 set timing on //실행시간을 본다 alter session set optimizer_mode = rule; //룰베이스로 동작 시킨다 set autotrace on // 실행계획 보기 SELECT course_code, nvl(SUM(decode(year,'1999',deposit_amount)),0) Y1999, nvl(SUM(decode(year,'2000',deposit_amount)),0) Y2000, nvl(SUM(decode(year,'2001',deposit_amount)),0) Y2001, nvl(SUM(decode(year,'2002',deposit_amount)),0) Y2002 FROM EC_APPLY WHER.. 2021. 1. 1.