2011-07-29 4 views
0

DBLink를 사용하여 원격 데이터베이스를 쿼리하고 있습니다. 이제 쿼리 속도를 높이려면 어떻게해야합니까? 원격 테이블의 일부 열에 인덱스를 추가하는 방법은 무엇입니까? 누구나 동일한 권장 사항을 제공 할 수 있으면 감사하겠습니다.원격 테이블의 열에 인덱스 추가 - Oracle

+3

누가 데이터베이스를 소유합니까? 당신이 데이터베이스를 가지고 있지 않다면, 당신이 원하는대로 인덱스를 추가 할 수 없습니다. 색인이 항상 답이되는 것은 아닙니다. – c0deNinja

+0

인덱스를 지정하는 +1이 항상 답이되는 것은 아닙니다. DB 링크가 염려되는 곳에서는 쿼리를 튜닝하기위한 많은 옵션이 있지만 인덱스와 관련된 것은 아닙니다. – Ollie

+0

John C, 원격 데이터베이스에서 실행중인 쿼리에 대한 자세한 정보를 게시 한 다음 응답 시간 개선을위한 추가 옵션을 제공 할 수 있습니까? – Ollie

답변

3

원격 데이터베이스에서 DBMS_JOB 또는 DBMS_SCHEDULER 패키지를 사용하여 DDL을 실행하여 작업을 예약 할 수 있습니다.

오라클이 DDL over Databse 링크에 예외를 던지면이 것이이라고 생각하십시오. 그럴만 한 이유가 있어야합니다. 맞습니까? 데이터베이스 링크를 통해 원격으로 스키마를 망칠 필요가 없습니다. 대신 원격 DBA와 대화하여 해결책을 찾아보십시오.

2

당신이

ORA-02021: DDL operations are not allowed on a remote database 
2

당신은 귀하의 요청에 따라 원격 데이터베이스에 구체화 된 뷰를 만들 수 있습니다 보게 될 DBLINK (당신의 DBLINK가 소유 스키마를 사용하는 경우에도)를 통해 할 수없는, 추가 선호하는 색인을 생성 한 다음, 필요한 경우 해당 구체화 된보기의 동의어를 작성하십시오.

1

원격 데이터베이스에 인덱스를 만들 수 있고 (물론 원격 데이터베이스) 뷰 형태로 쿼리를 구축 할 수 있습니다. 그런 식으로 원격 데이터베이스는 그가 가지고있는 모든 메소드 (인덱스와 같은)를 사용하여 쿼리를 완료하고 원하는 결과 만 가져옵니다.

관련 문제