什麼是 Oracle?
Oracle 資料庫是由 Oracle 公司開發的一款重磅級關聯式資料庫管理系統(RDBMS)。它是全球領先的企業級資料庫解決方案之一,提供了強大的功能來存儲、管理和檢索數據資料。對於各種規模的企業公司而言,使用 Oracle 資料庫管可以帶來多方面的好處,如可擴展性、可靠性、高可用性、高標準的安全性以及包括像是多租戶資料庫等先進的功能,可以幫助企業公司在進行數位化轉型的同時,穩定並且有效率的管理現有的資料數據,布局未來的雲端整合,提升市場競爭力。
學習 Oracle 的優勢
學習 Oracle 資料庫在當今競爭激烈的就業市場中至關重要,根據最新的全球就業市場趨勢和統計數據來看,具備 Oracle 資料庫技能的專業人才往往能夠獲得相對較多的就業機會以及較高的工作薪資。在台灣人力銀行平台上,Oracle 相關技能經常出現在許多 IT 職缺的技能要求當中,突顯了 Oracle 資料庫技能在 IT 領域中的重要性。在新興科技領域,如雲端計算、數位轉型、大數據分析、機器學習和 AI 資料智能化方面來說,更多的企業公司必須積極招聘擁有 Oracle 資料庫技能的專業人才,才可以應對日益複雜的資料管理與資料分析的需求與挑戰。所以在近幾年來,Oracle 資料庫技能一直都是電腦資訊職涯發展的熱門選項之一。
老師相信同學在這門課程所學到的 Oracle 資料庫的技能與概念,不僅僅能夠讓同學在競爭激烈的求職環境中脫穎而出,也一定能夠進一步幫助所屬的企業公司,正確並且有效率的架設管理 Oracle 資料庫。貢獻所學,提升自己的價值。
1. 以 Oracle 資料庫為主軸:提供資料庫管理實際工作項目訓練的課程內容
這門課程專注於 Oracle 資料庫管理,同學將深度探討核心組件、架構、運作維護,從理論知識到實踐技能的融合,同學能進一步了解資料庫的運作原理以及相關的管理與開發技術。透過課程內容的實際工作項目訓練,同學將具備應對實際資料庫管理挑戰的能力,為未來的職業發展奠定堅實基礎。
2. 簡化式的 Oracle 資料庫管理操作教學:釐清概念,減輕初學者常見困惑
這門課程設計的想法是將複雜的 Oracle 資料庫概念簡化,使同學更容易理解。因為老師非常了解初學者常常會遇到的困惑和混淆的情況,特別是在面對各式不同資料庫管理方法之間選擇的時候,所以老師在這堂課程特別強調基本概念,提供清晰的指導,討論資料庫管理背後的原理和思維方式,以幫助同學針對各式常見的資料庫管理事項,選擇合適簡單且有效率的管理方法。
3. 實作單元練習的設計:逐步完成各章節實作單元後,就能完成一個屬於自己的 Oracle 資料庫建構的專案
課程中結合理論知識和實際操作,並設計豐富的實作單元練習,這些練習將引導同學逐步完成一個完整的 Oracle 資料庫建構專案,從設計到實施,從配置到管理,同學將實際應用所學知識,培養解決問題和實作的能力。這種深入參與的學習方式不僅可以強化同學的理論基礎,也進一步提升了實踐能力,使同學能夠在實際資料庫管理工作中更加自信地應對各種挑戰。
學好資料庫管理並不容易,雖然網路上有很多資源,但是如果沒有人從旁協助的話,新手往往會有事倍功半的問題。透過這堂課程,同學將可以全面性的認識 Oracle 資料庫的專業領域,從無到有,並瞭解 Oracle DBA 與資料庫開發人員等的工作型態與工作上必備的資料庫技能。
這堂課將利用許多實際的案例與經驗,引導同學轉變思考方向,並幫助同學整合運用已經既有的專業知識與技能,以維持整體 IT 性能穩定為出發點,進而尋找提升效能及強化資料庫安全的各種可能性,讓同學發展成為更具全面性的資料庫專家。
第一章節:認識 Oracle 資料庫
在這個課程章節中,老師將深入介紹資料庫,探討 Oracle 基本概念、特點和應用範圍,以及在當今資訊科技領域中結構化資料與非結構化資料的重要性與其各自不同的管理方法。課程中老師會比較關聯式資料庫管理系統(RDBMS)和 NoSQL 資料庫管理系統,探討它們各自的特點、適用場景和優缺點,幫助同學進一步了解不同類型的資料庫的選擇與應用,建立起對 Oracle 資料庫及其相關概念的初步認識,為後續學習奠定堅實的基礎。
單元 1:為什麼要學習 Oracle 資料庫?單元 2:課程大綱介紹第二章節:Oracle 資料庫架構和組成元件
瞭解 Oracle 資料庫的核心概念和關鍵技術,是每一位稱職的 Oracle 資料庫管理員所必備的基本條件。在這個章節,我們將從 Oracle 執行個體 (Instance) 與資料庫 (Database) 的區別開始,探討它們在資料庫系統中的角色和功能,以及它們之間的關係,幫助同學穩固建立起最基本的 Oracle 資料庫概念。接著,我們將深入研究 Oracle 執行個體 (Instance) 與資料庫 (Database) 的組成元件,以及這些元件在資料庫運作中的重要性,並了解它們如何協同工作以支援資料庫的運作。隨後,我們會簡單介紹 Oracle 資料庫多租戶架構(Multitenant Architecture),Oracle RAC 和 Data Guard 高可用性技術的概念,瞭解 Oracle 如何實現資料庫的容器整合性能,高可用性和災難復原。
透過第二章節的學習,同學將可以建立起對 Oracle 資料庫的進一步理解,並掌握相應的技術知識,幫助同學奠定未來在進階資料庫管理和應用領域中的堅實基礎。
※附註: 多租戶架構管理(Multitenant Architecture)會在這門課程的第 6 章節進一步詳細的介紹設定與使用方法。至於高可用性和災難復原技術是屬於進階型的資料庫課程,所以在這門基礎課程裡不會進一步詳細介紹 Oracle RAC 和 Data Guard 的設定。
單元 1:Instance vs Database單元 2:Oracle Instance 組成元件單元 3:Oracle Database 組成元件單元 4:多租戶架構 (Multitenant Architecture) 單元 5:高可用性 (Oracle RAC and Data Guard)第三章節:Oracle 資料庫安裝與介紹
這門課程的設計是在 Windows 環境中安裝使用 Oracle Database 21c Express Edition 版本。這是免費的版本,其功能豐富,非常適合學習與測試使用。在第三章節中,老師會帶領著同學一步一步地示範如何正確安裝 Oracle 資料庫,以及在 Windows 系統環境中安裝 Oracle 資料庫所要注意的事項。接著,老師會介紹常用重要的 Oracle 內定使用者以及如何連線 Oracle 資料庫。老師知道有許多想要自行學習 Oracle 資料庫的人,在一開始最常面臨最大的問題就是不知道如何正確的連線資料庫,在求助無門之後,就打了退堂鼓,放棄學習 Oracle 資料庫,非常的可惜。
所以老師在這個章節裡也會針對同學常遇到的痛點,詳細介紹正確連線資料庫的方法,以及如何有效地使用各式的指令,來控制 Oracle 資料庫的正常運行。透過第三章節的學習,同學將能夠掌握 Oracle 資料庫的基礎知識和操作技能。第三章節的實作單元,會讓同學實際操作 Oracle 資料庫的安裝,供未來各個章節的練習與使用。
單元 1:Oracle 資料庫安裝步驟單元 2:認識 Oracle 內定使用者單元 3:連線資料庫 (SQL Plus 和 Command Prompt)單元 4:啟動與關閉 Oracle (Startup 和 Shutdown)單元 5:新增範例資料庫架構 (Schema)單元 6:實作單元第四章節:Oracle 資料庫運作
第四章節中老師將帶領同學深入探索 Oracle 資料庫的運作機制和重要元件。我們將從 Oracle 資料庫的網路重要元件 LISTENER, TNSNAMES, 和 SQLNET 設定開始,探討其在資料庫運作中的關鍵角色和功能。接著,我們將深入研究 Oracle 資料庫儲存結構的概念,一次搞懂 Oracle Data Blocks,Extents,跟 Segments 所各自代表的儲存結構。接下來會介紹參數設定檔案(PFILE, SPFILE)的使用方法和配置技巧,以及線上重做日誌與存檔日誌的作用和管理,探討它們在資料庫備份復原中的重要性。第四章節最後會進行兩個實作單元,讓同學透過實作,加深對 Oracle 資料庫運作的理解和應用能力。
單元 1:Oracle 資料庫的網路重要元件單元 2:Oracle 客戶端軟體的安裝單元 3:資料庫儲存結構概念 (Storage)單元 4:控制檔案與參數設定檔案 (Control File and PFILE/SPFILE)單元 5:線上重做日誌與存檔日誌 (Online Redo log and Archive log)單元 6:實作單元-Part 1單元 7:實作單元-Part 2第五章節:安全管理與架構物件
在課程的第五章節,我們將探討 Oracle 資料庫中的安全管理和架構物件。透過 Oracle 資料庫的安全管理設定,瞭解使用者跟資料庫架構之間的關聯性,進一步深入認識各式常用的 Oracle 資料庫架構物件,如 Tables, Indexes, Clusters, Views, Sequences, 和 Synonyms 等,了解它們在資料庫中的作用和特點,以及如何有效的管理這些物件。最後,以實作單元的練習來做結尾,強化同學對第五章節的理解與應用。
單元 1:安全管理單元 2:架構物件 (Schema objects)-Part 1單元 3:架構物件 (Schema objects)-Part 2單元 4:實作單元第六章節:多租戶架構管理 (Multitenant Architecture Management)
以往,在安裝 Oracle 資料庫的時候,都會有不同的選項,供安裝者選擇所安裝的 Oracle 資料庫,是屬於多租戶架構,還是傳統的單一 (非多租戶) 架構資料庫。但是,從 Oracle Database 21c 開始,多租戶架構變成是唯一的 Oracle 資料庫架構選擇的選項。所以在這個章節裡,老師要帶領同學,深入探索 Oracle 多租戶架構的管理和應用。認識容器資料庫(CDB)與可插入資料庫(PDB)的差異以及它們各自的特點和適用場景。接著,我們也會進一步介紹應用程式容器的概念,探討如何在多租戶環境中有效管理和部署應用程式資料庫。在第六章節的實作單元,同學可以透過實作練習,將 Oracle 資料庫多租戶架構管理的概念與技術,實際扎實的操作一次,加強印象。
單元 1:容器資料庫 (CDB) vs 可插入資料庫 (PDB)單元 2:應用程式容器 (Application Container)單元 3:建立新的可插入資料庫 (PDB)單元 4:多租戶架構管理單元 5:實作單元第七章:資料的移轉 (Movement)
資料以及資料庫的移轉,在實際的 DBA 工作場景上, 常常遇到。這個單元,我們會介紹 Oracle 傳統的 Export 跟 Import 功能,以及 Oracle 更新穎更快速的 Data Pump 資料移轉工具。同學透過實作單元的練習,將能夠掌握 Oracle 資料的有效移轉方法,並具備相應的技術知識和實作能力,為日後的資料管理奠定基礎。
單元 1:Export and Import單元 2:Data Pump單元 3:實作單元第八章節:備份和還原
沒有備份的資料庫就像行走在鋼索上的人一樣,隨時都有掉落下來致命的危險。任何時候,硬體的故障、軟體程式的錯誤、以及人為失誤或其他意外事件,都可能導致資料庫的損壞或資料的遺失。如果沒有有效的備份,這些遺失的資料,便會很難取得回來,甚至可能無法完全復原取回。
備份資料庫是保護資料完整性和業務連續性的最後一道防線,是確保資料庫系統能夠快速恢復並繼續運行的關鍵措施。第八章節中,老師將帶領同學認識 Oracle RMAN(Recovery Manager ),RMAN 是 Oracle 官方提供的備份和還原工具,老師將進一步探討 RMAN 的管理與設定,老師也設計了 2 個 RMAN 的實作單元,讓同學可以實際的練習操作 RMAN,掌握 Oracle 資料庫的備份和還原技術。
單元 1:COLD backup vs HOT backup單元 2:認識 RMAN單元 3:RMAN 管理單元 4:實作單元-Part 1單元 5:實作單元-Part 2第九章節:監控管理與工作排程
第九章節老師會介紹 Oracle 資料庫的監控管理,工作排程,以及資料庫自動工作負載報告。這些資料庫的功能,都是可以確保資料庫運行順暢和保持高效率的重要一環。老師會帶領同學認識如何在 Oracle 資料庫環境中,查看監控警告訊息,以確保在資料庫問題發生的第一時間,可以馬上做出最適當的處理。接著老師也會介紹 Oracle 工作排程以及 AWR 自動工作負載報告,讓同學在未來獨立面對 Oracle 資料庫管理的時候,能夠靈活運用這些功能,提高資料庫的穩定性。實作單元設計中,同學會實際操作 Oracle 資料庫的監控管理和工作排程。
單元 1:監控警告訊息 (Alert)單元 2:工作排程 (Job and Scheduler)單元 3:自動工作負載報告 (AWR)單元 4:實作單元第十章:課程總結
根據課程整體設計,同學會逐一完成各個章節實作單元,在最後可以完成一個屬於自己的 Oracle 資料庫建構的專案!
作業 1:提供課程中的實作單元專案作品給老師評閱單元 1:未來展望與期許本課程將利用螢幕錄製操作畫面和數位白板 (Microsoft Whiteboard),以多元化的方式輔助教學。透過螢幕錄製,同學能夠同步並且清楚的觀看到老師在電腦螢幕上的操作過程,這有助於同學更清晰地理解各種軟體和應用程式的使用方法。同時,數位白板的運用也能夠提供一個最佳化的學習環境,老師可以在口述說明的時候,在白板上做註解和說明,幫助同學更加深入地理解課程內容。這種多媒體的教學方式設計,一定可以提高同學學習的成效,達成事半功倍的學習效果。
螢幕錄製操作畫面
數位白板 (Microsoft Whiteboard) 操作畫面
課程是針對以下兩種族群的同學設計:
1. 電腦相關科系、計畫進入資料相關領域職場的同學。
2. 已經是資訊技術專業人員,希望深化 Oracle 資料庫管理相關技能的同學(例如:資料庫管理師、資料工程師、資料庫開發者、應用程式開發者、系統管理師、系統分析師、資料科學家以及其他相關工程師與技術人員)。
這堂課屬於資料庫初學入門專業課程,建議學員具備以下的基本概念與技能會有更好的學習效果。
1. 基本的 Windows 作業系統概念
這堂課同學會使用到作業系統的檔案編輯,檔案備份,以及命令提示字元。課程中會提到 Windows 作業系統的 hosts 檔案與服務 (services),也會提到資料庫連接埠 (port) 與客戶端服務器概念 (Client-Server) 。這些都是作業系統裡跟資料庫相關的重要元件,老師會一步一步的帶領同學認識這些重要的元件。
2. 基礎的 SQL 語法
在 SQL 語法中,DDL (資料定義語言 - Data Definition Language) 和 DML (資料操作語言 - Data Manipulation Language) 是兩個重要的語法類別。
DDL(資料定義語言): DDL 用於定義和管理資料庫結構,包括表格、索引等。它用於建立、修改和刪除資料庫物件。DDL 的一些常見命令包括:
CREATE:用於建立新的資料庫物件,如建立新的資料表格、索引等。
ALTER:用於更改現有的資料庫物件,如更改已經存在的索引的設定。
DROP:用於刪除現有的資料庫物件,如刪除不需要再使用到的資料表格。
DML(資料操作語言): DML 用於對數據資料進行操作,包括搜尋檢索、插入、更新和刪除資料。DML 的一些常見命令包括:
SELECT:用於從表格中搜尋檢索資料。
INSERT:用於將新資料插入到資料表格中。
UPDATE:用於更新資料表格中現有資料的值。
DELETE:用於從資料表格中刪除資料。
這堂課老師會教導同學如何使用簡單的資料定義語言 (DDL) 的 SQL 語法,來設定架構資料庫。不會著墨太多在資料操作語言 (DML) 這個類別的 SQL 語法上面。同學只需要認識如下方所列出的簡單 SQL 搜尋語法,就可以跟上老師上課的節奏。
SQL 語法例子:
SELECT username FROM users;
這個 SQL DML 搜尋語法會從 users 這個資料庫表格列出所有的 username 使用者名稱。大家好,我是 Jason,目前在美國一家金融企業 IT 基礎設施資料庫部門擔任主管一職,負責公司企業資料的布局與資料庫相關的電腦技術人員管理。熟悉的資料庫軟體有 Oracle、SQL Server、MySQL 及 MongoDB。工作職責包含提供公司 IT 內部資料庫的教育訓練,以及不同資料庫平台管理技能的交叉訓練。
【任職經歷】
Vice President, Manager of Database Administration - First National
DBA Team Manager - HM Health Solutions
Senior DBA - Highmark Inc.
Lead DBA - Allegheny Health Network
Application Developer - Children's Institute of Pittsburgh
Hahow 好學校-DBA 訓練營-SQL Server 資料庫管理入門
目前選修人數: 555 位同學
Hahow 好學校-Azure 雲端基礎入門
目前選修人數: 114 位同學
問題回覆頻率:
募資期間:預計約 2-3 天一次回答相關問題。
開課後:每週一次統一回答問題。
作業設計:這堂課會有一份作業,學生必須繳交一份課程中的資料庫實作專案作品給老師評閱,作業的內容會在第十章節詳細說明。
作業批改頻率:老師每週將固定回覆、批改十位學生的作業。
