SQL數據庫培訓
一、SQL 2012數據庫管理培訓
1、數據庫基本管理:數據庫對象概述(數據庫對象,事務日志,基本的數據庫對象:表 ,模式,文件組,關系圖,視圖,存儲過程,用戶定義函數,用戶和角色,規則,默認值,用戶定義數據類型)、SQL Server數據類型、SQL Server對象標識符。
2、數據庫高級管理:為數據完整性規則使用觸發器、觸發器的其他常見用途、其他觸發器問題、性能考慮、刪除觸發器、調試觸發器。
3、數據庫優化及安排:保證SQL Server 2012的安全,包括SQL Server 2012身份驗證模式、訪問權限、用戶的設置、角色的分類、角色的設置、架構以及如何確保數據庫服務器的安全。進行SQL Server自動化管理,如何創建與刪除作業,如何啟用與禁用作業,如何手動和自動執行作業,如何創建與刪除警報,
二、SQL 2012數據庫管理(提升)
模塊一
1、規劃數據模型策略:定義XML存儲數據的標準 ,規劃Schema方案,規劃Scale-Out策略。
2、設計Notifications Services的解決方案
3、規劃Source Control、Unit Testing和Deployment
4、設計Service Broker解決方案"
模塊二
1、高級查詢及XML技術:CTE,Ranking查詢函數 ,XML數據類型與關系型數據轉換策略。
2、規劃數據庫邏輯模型 :創建邏輯模型 ,設計OLTP應用模型 ,設計數據倉庫應用模型。
3、規劃物理模型:設計數據庫物理對象,設計數據庫安全 ,規劃數據庫和SQL Server選項
模塊三
1、使用MARS(Multiple Active Result Sets)來設計查詢策略
2、為數據庫應用設計緩存策略 :SQL Server 2008 R2中的數據和查詢緩存,使用SQL Server外部緩存技術 。
3、調解數據庫查詢性能:查詢語句的邏輯順序 ,使用子查詢時需要考慮的問題
模塊四
1、查詢中的游標影響 :比較Cursor-Based和Result Set-Based操作,選擇適合的服務器端游標,使用PIVOT和CTE(Common Table Expressions)
2、使用索引策略:規劃數據庫優化選項 ,使用索引需要考慮的問題,索引策略。
3、管理并發:定義隔離級, 定義事務策略,規劃SQL Server事務處理策略,了解數據處理需求 。
數據庫,尤其是關系型數據庫,非常重要。那為什么要學習其原理呢?
對優秀的工程師來說,只會用數據庫是遠遠不夠的。學習原理對于當CRUD BOY搬磚收益并不大,但當通用組件真的無解需要自己擼起袖子上時,沒有金坷垃怎么種莊稼?設計系統時,理解原理能讓你以少的復雜度代價寫出更可靠高效的代碼;遇到疑難雜癥需要排查時,理解原理能帶來精準的直覺與深刻的洞察。
數據庫是一個博大精深的領域,存儲I/O計算無所不包。其主要原理也可以粗略分為幾個部分:數據模型設計原理(應用)、存儲引擎原理(基礎)、索引與查詢優化器的原理(性能)、事務與并發控制的原理(正確性)、故障恢復與復制系統的原理(可靠性)。 所有的原理都有其存在意義:為了解決實際問題。
例如數據模型設計中的范式理論,就是為了解決數據冗余這一問題而提出的,它是為了把事情做漂亮(可維護)。它是模型設計中一個很重要的設計權衡:通常而言,冗余少則復雜度小/可維護性強,冗余高則性能好。具體來說,冗余字段能加快特定類型的讀取(通過消除連接),但在寫入時就需要做更多的工作:維護多對象副本間的一致性,避免多對象事務并發執行時發生踩踏。這就需要仔細權衡利弊,選擇合適的規范化等級。數據模型設計,就是生產中的數據結構設計。不了解這些原理,就難以提取良好的抽象,其他工作也就無從談起。
而關系代數與索引的原理,則在查詢優化中扮演重要的角色,它是為了把事情做得快(性能,可擴展)。當數據量越來越大,SQL寫的越來越復雜時,它的意義就會體現出來:怎樣寫出等價但是更高效的查詢?當查詢優化器沒那么智能時,就需要人來干這件事。這種優化往往有四兩撥千斤的效果,比如一個需要幾秒的KNN查詢,如果知道R樹索引的原理,就可以通過改寫查詢,創建GIST索引優化到1毫秒內,千倍的性能提升。不了解索引與查詢設計原理,就難以充分發揮數據庫的性能。