SQL Server DBA에서 Oracle로 전환하는 방법은 무엇입니까?


30

흥미롭게도, SQL Server DBA에서 Oracle로 전환하려면 주요 학습 또는 비 학습은 어떻게됩니까?

나는 개념이 같고 그 차이가 단지 프로그래밍 언어라고 가정하지만 다른 쪽면을 보지 못했습니다.



1
약간의 유머 (OT는 미안하지만), 만났습니까? dba.stackexchange.com/questions/16884/…
booyaa

답변:


40

Oracle과 SQL Server에는 여러 가지 아키텍처와 관용적 인 차이점이 있으며 문서에서 몇 가지 핵심 용어가 다르게 사용됩니다. 이 작업을 수행 한 지 몇 년이 지났지 만 몇 가지 주요 관용적 차이점은 다음과 같습니다.

  • 오라클은 tempdb와 직접적인 관련이 없습니다. 전역 임시 테이블은 영구 엔터티이므로 SQL Server의 임시 테이블에서와 마찬가지로 즉시 만들지 않습니다.

  • 관용 PL / SQL은 관용 T-SQL보다 훨씬 절차 적입니다. 반면 PL / SQL에는 병렬 루프 구문을 포함하여 빠른 커서 작동을 지원하는 기능이 있습니다. 종종 중간 커서 결과는 SQL Server에서 임시 테이블을 사용하는 정렬 방식과 유사한 방식으로 사용됩니다. '%'를 사용하여 커서 변수 유형에서 다형성을 얻는 방법을 찾으십시오.

  • SQL * Plus는 SQLCMD와 유사한 명령 줄 도구입니다. 바닐라 설치에서는 사용 가능한 모든 것일 수 있습니다. SSMS와 같은 GUI 도구를 원한다면 SQL Developer 또는 TOAD와 같은 타사 도구를 얻을 수 있습니다. TOAD는 꽤 비싸다.

  • 롤백 세그먼트 (Oracle의 MVCC에서 사용)의 역할과 '스냅 샷이 너무 오래된'오류의 기쁨에 대해 알아보십시오.

  • 가능하면 metalink 계정을 만드십시오.

  • 개념 안내서를 읽으십시오. 유용한 스타터 정보가 많이 있습니다.

  • 테이블 스페이스는 파일 그룹과 거의 같습니다.

  • PL / SQL에 포함 된 SQL과 SQL 언어는 Oracle에서 완전히 동일하지 않습니다.

  • 오라클은 최근까지 재귀 CTE를 지원하지 않았습니다. CONNECT BY를 사용하여 재귀 쿼리를 수행 할 수 있습니다.

  • RMAN에 대한 문서를 읽고 백업 방법을 확인하십시오. 차등 백업을 하나의 복원 가능한 백업으로 병합하는 등 몇 가지 깔끔한 트릭을 수행 할 수 있습니다.

  • 시스템 데이터 사전에는 'ALL', 'USER'및 'DBA'버전의 테이블이 있습니다. 'USER_ '는 로그인이 소유 한 객체를 보여줍니다. 'ALL_ '은 로그인이 읽을 수있는 모든 객체를 표시합니다. 'DBA_ *'는 글로벌 뷰이지만이를 보려면 적절한 권한이 있어야합니다. 아마도 SQL Server보다 Oracle에서 데이터 사전을 더 많이 사용할 것이므로 알 수 있습니다.

  • Oracle에서는 클러스터 된 테이블을 '인덱스 순서 테이블'이라고합니다. Oracle의 '클러스터 된 테이블'은 매우 다른 기능을 나타냅니다. Oracle에서 클러스터 테이블은 공통 키를 기반으로 마스터 / 세부 테이블의 물리적 스토리지를 제공 할 수있는 기능입니다. 이 기능은 널리 사용되지 않습니다.

  • Oracle에서는 인덱싱 된 뷰를 '구체화 된 뷰'라고합니다. 그들은 자신의 질문을 할만한 충분한 뉘앙스를 가지고 다소 다르게 작동합니다.

  • Oracle에는 SQL Server의 '데이터베이스'와 동등한 개념이 없습니다. Oracle에서 스키마는 일부 데이터베이스 객체의 소유자 일뿐입니다.

  • PL / SQL에는 'packages'라는 명시 적 모듈 구조가 있습니다.

  • 식별 컬럼 대신 시퀀스 사용을보십시오.

  • 이전 버전의 Oracle (10g 이전)에서는 쿼리 계획을 얻는 것이 약간 더 복잡합니다. 계획을 덤프 할 테이블 (올바른 형식의)을 작성한 다음 쿼리 계획을 가져 오려면 테이블에 쿼리를 'EXPLAIN PLAN'해야합니다. 그런 다음 테이블에서 쿼리 계획을 다시 가져올 수 있습니다. 모두와 그들의 개는 좋아하는 쿼리 계획 쿼리를 가지고 있습니다. 구글 검색을하고 하나를 찾은 다음 맛을 내기 위해 frig. 10g 는 쿼리 계획 작업을 단순화하는 dbms_xplan 이라는 패키지를 추가했습니다 .

  • 유닉스 나 리눅스 호스트에서 Oracle을 실행하고 있다면 쉘 스크립팅에 대한 실무 지식이 나쁘지 않습니다.

  • Oracle은 자율 트랜잭션을 지원합니다. 내부 자율 트랜잭션을 커밋하고 부모가 롤백하면 커밋 된 상태를 유지할 수 있습니다. SQL Server 중첩 트랜잭션은 실제 중첩 트랜잭션이 아니며 의미가 다릅니다. 독립 연결을 열고이를 통해 자율 작업을 수행하여 SQL Server의 CLR 저장 프로 시저를 사용하여이 동작을 에뮬레이션 할 수 있습니다.

오라클은 OLAP 서버, 리포팅 툴 및 ETL 툴링을 판매하지만 BI 툴링은 기본적으로 제공되지 않습니다.

  • Oracle 은 bcp와 기능이 유사한 SQL * Loader 라는 벌크로드 도구를 번들로 제공합니다 .

  • SSIS와 가장 유사한 것은 OWB ( Oracle Warehouse Builder )이지만 이것은 별도의 항목이며 기본 시스템과 함께 제공되지 않습니다.

  • Oracle은 Oracle Reports 라는보고 도구를 만들지 만 기본 시스템과 함께 제공되지는 않습니다. 이는 Reporting Services와 가장 가까운 것입니다.

  • 또한 Oracle은 Discoverer 라는 ROLAP 도구를 만듭니다 . Oracle이 생산하는 Report Builder와 가장 가까운 제품입니다. 최신 버전 ( 'Drake')은 Oracle OLAP 엔진을 지원합니다.

  • 오라클은 Express 라는 OLAP 제품을 가지고 있었습니다. 언젠가는 핵심 Oracle DBMS 엔진에 내장하여 기본 데이터 구조를 불투명 한 얼룩에 저장했습니다. Express와 완전히 호환되지 않으며 타사 OLAP 프런트 엔드 도구의 지원이 거의없는 독점적 인터페이스가 있습니다.

  • Oracle BI Enterprise Edition 은 Siebel Analytics였습니다. 여기에는 OLAP 기능이 있지만 익숙하지 않습니다. 아마 그것을 사용한 사람이 댓글을 달고 싶을 수도 있습니다. Siebel이 자체 BI 툴링과 완전히 분리 된 제품이라는 것을 직접 인정하지 않고 Oracle은 Oracle BI Standard Edition에서 Enterprise Edition으로의 '업그레이드 경로가 없다'고 말했습니다. Standard 및 Enterprise BI 제품군은 별도의 제품이며 기본 시스템과 번들로 제공되지 않습니다.

  • 실제로 Oracle이 판매 한 SSAS와 가장 가까운 것은 Essbase (이전의 Hyperion)입니다. 이 제품은 별도의 제품이며 기본 시스템과 함께 제공되지 않습니다.

당연히 오라클의 BI 전략은 업계 전문가들에 의해 개 아침 식사의 일부로 간주됩니다 .

OTOH를 생각할 수없는 다른 것들이있을 것입니다. 내가 생각하는대로 추가하겠습니다.


1
와우 이것은 내가 찾던 것에 매우 가깝습니다. 좋은 정보! Oracle에는 자동화 된 SQL 서버 유형 작업이 있습니다. Oracle의 SSIS와 동등한 것이 있습니까?
darwindeeds

1
Oracle에서 SSIS에 가장 가까운 것은 Oracle Warehouse Builder (OWB)이지만 기본 시스템과 함께 제공되지는 않습니다. 별도로 구매해야합니다. bcp와 비슷한 SQL * Loader라는 벌크로드 도구가 있습니다.
ConcernedOfTunbridgeWells

6
이 목록에 추가 할 사항 : Oracle 리더에서는 작성자를 절대로 차단하지 않으며 작성자는 독자를 절대로 차단하지 않습니다. 내 이해는 SQL Server의 기본 설치에서 여전히 다르다는 것입니다. 오라클은 커밋되지 않은 데이터를 읽을 수 없습니다. 오라클에서는 임시 테이블을 거의 사용하지 않습니다. 하나의 큰 문장으로 모든 것을 수행하는 것이 훨씬 빠릅니다. 커밋이 빈번하면 대량로드 속도가 느려집니다. 이상적으로는 모든 것이 완료되면 단일 커밋을 발행해야합니다.
a_horse_with_no_name

1
@a_horse_with_no_name 당신의 이해 가 정확합니다
Jack Douglas


10

우리는 Oracle 및 SQL Server와 함께 일하며 DBA 책임자 인 Michelle Malcher는 이러한 전환에 대해 동료를 지원합니다. 이 경험을 바탕으로 "Microsoft SQL Server DBA 용 Oracle 데이터베이스 관리 (Oracle Press)"라는 제목의 책을 ​​썼습니다. 나는이 책을 좋아했다.

동료가 책을 추천하는 것이이 사이트에 적합한 지 잘 모르겠습니다. 나는 Michelle에게보고하지 않고 개발자 팀을 이끌고 있습니다.


2
meta.stackoverflow.com에서 자체 프로모션에 관한 대화에 참여하고 자체 프로모션 주변의 회색 영역이 문제와 관련이 있으면 괜찮다고 답했습니다. Jeff Atwood가 동의했습니다.
ConcernedOfTunbridgeWells

2
저는 Michelle과 함께 일하지 않지만이 책을 많이 좋아했습니다. 필자는 표준 Oracle DBA 서적을 읽는 것보다 SQL Server 아키텍처와 Oracle의 아키텍처를 비교하는 방법을 실제로 설명했습니다.
RK Kuppala
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.