วิธีการเปลี่ยนจาก SQL Server DBA เป็น Oracle


30

หากฉันต้องการเปลี่ยนจาก SQL Server DBA ไปเป็น Oracle สิ่งที่จะเป็นการเรียนรู้ที่สำคัญหรือไม่น่าสนใจที่ฉันต้องทำ

ฉันคิดว่าแนวคิดเหมือนกันและความแตกต่างเป็นเพียงภาษาโปรแกรม แต่ฉันไม่ได้เห็นอีกด้านหนึ่งของประตู



1
อารมณ์ขันนิดหน่อย (ขออภัยถ้า OT) คุณเคยเจอบ้างไหม? dba.stackexchange.com/questions/16884/…
booyaa

คำตอบ:


40

Oracle และ SQL Server มีจำนวนของสถาปัตยกรรมและความแตกต่างของสำนวนและคำศัพท์หลักหลายบิตถูกนำมาใช้แตกต่างกันในเอกสาร เป็นเวลาไม่กี่ปีที่ผ่านมาตั้งแต่ฉันทำเช่นนี้ แต่ความแตกต่างที่สำคัญบางประการคือ:

  • Oracle ไม่มีค่าเทียบเท่ากับ tempdb โดยตรง ตาราง temp ส่วนกลางเป็นเอนทิตีแบบถาวรและคุณไม่ได้สร้างขึ้นมาอย่างที่คุณต้องการด้วยตาราง temp ใน SQL Server

  • Idiomatic PL / SQL นั้นมีขั้นตอนมากกว่า T-SQL ที่ใช้สำนวน ในทางกลับกัน PL / SQL มีคุณสมบัติที่จะสนับสนุนเคอร์เซอร์เร็วรวมถึงการสร้างลูปแบบขนาน บ่อยครั้งที่ผลลัพธ์เคอร์เซอร์กลางถูกใช้ในรูปแบบที่คล้ายกับการเรียงลำดับสิ่งที่จะใช้ตารางชั่วคราวสำหรับใน SQL Server ค้นหาวิธีการใช้ '%' เพื่อรับความหลากหลายในรูปแบบของตัวแปรเคอร์เซอร์

  • SQL * Plus เป็นเครื่องมือบรรทัดคำสั่งที่คล้ายกับ SQLCMD ในการติดตั้งวานิลลาอาจเป็นไปได้ทั้งหมดที่คุณมี หากคุณต้องการเครื่องมือ GUI เช่น SSMS คุณสามารถรับ SQL Developer หรือเครื่องมือของบุคคลที่สามเช่น TOAD คางคกค่อนข้างแพง

  • เรียนรู้บทบาทของกลุ่มย้อนกลับ (ใช้ใน MVCC ของ Oracle) และความสุขของข้อผิดพลาด 'ภาพรวมเก่าเกินไป'

  • รับบัญชี metalink ถ้าเป็นไปได้

  • อ่านคู่มือแนวคิด มันมีข้อมูลเริ่มต้นที่มีประโยชน์มากมาย

  • Tablespaces นั้นเทียบเท่ากับกลุ่มไฟล์

  • SQL และภาษาถิ่น SQL ที่ฝังอยู่ภายใน PL / SQL นั้นไม่เหมือนกันใน Oracle

  • Oracle ไม่รองรับ CTE แบบเรียกซ้ำจนกระทั่งเมื่อไม่นานมานี้ คุณสามารถค้นหาแบบสอบถามซ้ำโดยใช้ CONNECT BY

  • อ่านเอกสารสำหรับ RMAN เพื่อดูวิธีการสำรองข้อมูล คุณสามารถทำกลอุบายที่เรียบร้อยเช่นผสานการสำรองข้อมูลต่าง ๆ ไว้ในการสำรองข้อมูลแบบ restorable เดียว

  • พจนานุกรมข้อมูลระบบมีตาราง 'ALL', 'USER' และ 'DBA' 'USER_ ' แสดงวัตถุที่เป็นเจ้าของการเข้าสู่ระบบ 'ALL_ ' แสดงวัตถุทั้งหมดที่การเข้าสู่ระบบสามารถอ่านได้ 'DBA_ *' เป็นมุมมองทั่วโลก แต่คุณต้องมีสิทธิ์ที่เหมาะสมเพื่อดู คุณอาจจะใช้พจนานุกรมข้อมูลกับ Oracle มากกว่ากับ SQL Server ดังนั้นทำความรู้จักกับมัน

  • ตารางแบบคลัสเตอร์เรียกว่า 'ดัชนีที่เรียงลำดับตาราง' ใน Oracle 'ตารางคลัสเตอร์' ใน Oracle อ้างถึงคุณสมบัติที่แตกต่างกันมาก ใน Oracle ตารางคลัสเตอร์เป็นสิ่งอำนวยความสะดวกที่ช่วยให้สามารถจัดเก็บข้อมูลทางกายภาพของตารางต้นแบบ / รายละเอียดได้ตามคีย์ทั่วไป คุณสมบัติไม่ได้ใช้กันอย่างแพร่หลาย

  • มุมมองที่จัดทำดัชนีเรียกว่า 'มุมมองที่เป็นรูปธรรม' ใน Oracle พวกเขาทำงานค่อนข้างแตกต่างมีความแตกต่างพอที่จะทำบุญคำถามของตนเอง

  • Oracle ไม่มีแนวคิดเทียบเท่ากับ 'ฐานข้อมูล' ใน SQL Server ใน Oracle schema เป็นเพียงเจ้าของวัตถุฐานข้อมูลบางตัว

  • PL / SQL มีโครงสร้างโมดูลที่ชัดเจนที่เรียกว่า 'แพ็คเกจ'

  • ดูที่การใช้ลำดับแทนคอลัมน์ข้อมูลประจำตัว

  • การรับแผนคิวรีเป็นบิตซอลต์เลอร์ใน Oracle เวอร์ชันเก่า (ก่อนหน้า 10 กรัม) คุณต้องสร้างตาราง (ของรูปแบบที่ถูกต้อง) เพื่อดัมพ์แผนจากนั้น 'ขยายแผนที่' แบบสอบถามลงในตารางเพื่อรับแผนแบบสอบถาม จากนั้นคุณสามารถดึงแผนคิวรีออกจากตารางได้ ทุกคนและสุนัขของพวกเขามีแบบสอบถามแบบสอบถามแผนที่ชื่นชอบ ทำการค้นหา google และค้นหาจากนั้น frig เพื่อลิ้มรส 10g เพิ่มแพ็คเกจที่เรียกว่าdbms_xplanซึ่งช่วยให้การทำงานกับแผนแบบสอบถามง่ายขึ้น

  • หากคุณใช้ Oracle บนโฮสต์ unix หรือ linux การมีความรู้ในการทำงานของการเขียนสคริปต์เชลล์จะไม่ส่งผลเสียหาย

  • Oracle มีการรองรับธุรกรรมอัตโนมัติ - คุณสามารถส่งมอบธุรกรรมภายในอัตโนมัติและคาดว่าจะยังคงมีความมุ่งมั่นถ้าผู้ปกครองย้อนกลับ ธุรกรรมที่ซ้อนกันของ SQL Server ไม่ใช่ธุรกรรมที่ซ้อนกันจริงและมีความหมายต่างกัน คุณสามารถเลียนแบบพฤติกรรมนี้ด้วยโพรซีเดอร์ที่เก็บ CLR ใน SQL Server โดยการเปิดการเชื่อมต่อที่เป็นอิสระและทำการดำเนินการด้วยตนเองผ่านทางนั้น

Oracle มาพร้อมกับการใช้เครื่องมือ BI น้อยลงนอกกรอบแม้ว่า Oracle จะขายเซิร์ฟเวอร์ OLAP เครื่องมือรายงานและเครื่องมือ ETL

  • Oracle รวมเครื่องมือโหลดจำนวนมากที่เรียกว่าSQL * Loaderที่คล้ายกับฟังก์ชันกับ bcp

  • SSIS ที่ใกล้เคียงที่สุดคือOracle Warehouse Builder (OWB) แต่นี่เป็นรายการแยกต่างหากและไม่รวมกับระบบฐาน

  • Oracle จัดทำเครื่องมือรายงานที่เรียกว่าOracle Reportsแต่ไม่ได้รวมอยู่ในระบบฐาน นี่คือสิ่งที่ใกล้เคียงที่สุดกับบริการรายงาน

  • Oracle ยังสร้างเครื่องมือ ROLAP ชื่อDiscovererด้วย นี่เป็นผลิตภัณฑ์ที่ใกล้เคียงที่สุดกับ Report Builder ที่ Oracle ผลิต เวอร์ชันล่าสุด ('Drake') ได้รับการสนับสนุนสำหรับเครื่องมือ OLAP ของ Oracle

  • Oracle เคยมีผลิตภัณฑ์ OLAP ชื่อExpress ณ จุดหนึ่งพวกเขาสร้างมันลงในกลไกหลักของ Oracle DBMS โดยจัดเก็บโครงสร้างข้อมูลดั้งเดิมไว้ใน blobs ที่ทึบแสง ไม่สามารถใช้งานร่วมกับ Express ได้อย่างสมบูรณ์และมีอินเทอร์เฟซ propritary พร้อมการสนับสนุนเล็กน้อยจากเครื่องมือส่วนหน้าของ OLAP บุคคลที่สาม

  • Oracle BI Enterprise Editionเป็นสิ่งที่เคยเป็น Siebel Analytics นี่มีฟังก์ชัน OLAP บางส่วน แต่ฉันไม่คุ้นเคย อาจจะเป็นคนที่เคยใช้มันอาจต้องการแสดงความคิดเห็น โดยไม่ยอมรับโดยตรงว่า Siebel เป็นผลิตภัณฑ์ที่แยกจากการใช้เครื่องมือ BI ของตัวเองอย่างสมบูรณ์ออราเคิลระบุว่าไม่มี 'เส้นทางการอัพเกรด' จาก Oracle BI Standard Edition เป็น Enterprise Edition โปรดทราบว่าทั้งชุด Standard และ Enterprise BI เป็นผลิตภัณฑ์แยกต่างหากและไม่รวมอยู่ในระบบพื้นฐาน

  • ในทางปฏิบัติสิ่งที่ใกล้เคียงกับ SSAS ที่ขายโดย Oracle คือEssbase (เดิมชื่อ Hyperion) นี่เป็นผลิตภัณฑ์แยกต่างหากและไม่ได้รวมอยู่กับระบบฐาน

ไม่น่าแปลกใจที่กลยุทธ์ BI ของออราเคิลถูกมองโดยผู้เชี่ยวชาญด้านอุตสาหกรรมว่าเป็นอาหารเช้าของสุนัข

อาจมีสิ่งอื่น ๆ ที่ฉันไม่สามารถนึก OTOH; ฉันจะเพิ่มพวกเขาตามที่ฉันคิดไว้


1
ว้าวนี่ใกล้กับสิ่งที่ฉันกำลังมองหา ข้อมูลดีเยี่ยม! ฉันอ่านว่า Oracle มีงานประเภทเซิร์ฟเวอร์ SQL ที่สามารถทำงานอัตโนมัติ มีอะไรเทียบเท่ากับ SSIS ใน Oracle?
darwindeeds

1
สิ่งที่ใกล้เคียงที่สุดกับ SSIS ใน Oracle คือOracle Warehouse Builder (OWB) แต่ไม่ได้รวมอยู่กับระบบพื้นฐาน คุณต้องซื้อแยกต่างหาก มีเครื่องมือโหลดจำนวนมากคล้ายกับ bcp ที่เรียกว่า SQL * Loader
ConcOfOfTunbridgeWells

6
สิ่งที่ฉันจะเพิ่มในรายการนี้: ในผู้อ่าน Oracle ไม่เคยปิดกั้นนักเขียนและนักเขียนไม่เคยปิดกั้นผู้อ่าน ความเข้าใจของฉันคือว่านี่ยังคงแตกต่างในการติดตั้งเริ่มต้นใน SQL Server Oracle ไม่อนุญาตให้อ่านข้อมูลที่ไม่มีข้อผูกมัด คุณแทบจะไม่ใช้ตารางชั่วคราวใน Oracle การทำทุกอย่างในงบขนาดใหญ่มักจะเร็วกว่ามาก การกระทำที่พบบ่อยจะทำให้การโหลดจำนวนมากช้าลง ในทางที่ดีควรออกคำสั่งเดียวเมื่อทุกอย่างเสร็จสิ้น
a_horse_with_no_name

1
@a_horse_with_no_name ความเข้าใจของคุณถูกต้อง
แจ็คดักลาส


10

เราทำงานกับทั้ง Oracle และ SQL Server และผู้นำ DBA ของเรา Michelle Malcher ช่วยเพื่อนร่วมงานด้วยการเปลี่ยนแปลงนี้บ่อยครั้ง จากประสบการณ์นี้เธอเขียนหนังสือชื่อ "Oracle Database Administration สำหรับ Microsoft SQL Server DBAs (Oracle Press)" ฉันชอบหนังสือเล่มนี้

ฉันไม่แน่ใจว่าการแนะนำหนังสือโดยผู้ร่วมงานนั้นเหมาะสมกับไซต์นี้หรือไม่ ฉันไม่ได้รายงานกับมิเชลฉันเป็นผู้นำทีมนักพัฒนา


2
ฉันจำได้ว่าได้มีส่วนร่วมในการสนทนาเกี่ยวกับการโปรโมตตนเองใน meta.stackoverflow.com และตอบว่าพื้นที่สีเทารอบการโปรโมตตัวเองนั้นใช้ได้ถ้ามันเกี่ยวข้องกับคำถาม Jeff Atwood เห็นด้วย
เกี่ยวข้องกับ

2
ฉันไม่ได้ทำงานกับมิเชล แต่ฉันชอบหนังสือเล่มนี้มาก ฉันพบวิธีการอธิบายนี้จริง ๆ - เปรียบเทียบสถาปัตยกรรม SQL Server กับ Oracle น่าสนใจกว่าพูดอ่านหนังสือ Oracle DBA มาตรฐาน
RK Kuppala
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.