Course Code:
zamysql
Duration:
14 hours
Overview:
目標群體:
它是針對那些有使用 windows/linux 作為伺服器基礎的人的,知道 SQL,
Course Outline:
物理/邏輯架構 MySQL
- 伺服器檔和啟動文稿
- 伺服器設定 MySQL
- 我的.cnf
- 基本參數
- 伺服器紀錄檔
- 查詢日誌
- 查詢日誌慢
- 錯誤紀錄
管理
- 用戶帳戶
- MySQL 中的許可權和安全性
- 備份和還原 – Mysqldump 與 Percona 備份
- 資料庫維護
優化架構
- InnoDB:具體呈現 – 缺點、優點、與 MyISAM 有什麼區別 – 何時使用什麼?
- 如何選擇主鍵(空間鍵、b樹等)?
- 在 InnoDB 引擎上進行全文搜索(可能僅 <5.6 MyISAM,高於 5.6 MyISAM+InnoDB)
MySQL 查詢緩存
- 為什麼,為了什麼問題,什麼價值,值得它做大?
性能測試,識別性能問題
- 測試什麼 - 取決於我們想要獲得的結果
- 解決效能問題(慢查詢、等待、效能工具等)
資料分片(水平和垂直)
- 差異、成本、局限性
優化架構
索引
- 超大表中的索引
- 主金鑰(摺疊時,在哪些欄位上)
數據類型
- 選擇數據類型的技巧,正確使用字段類型(int/float、時間、地理位置)——優點、局限性
- int 以外的主鍵是否可接受且同樣有效?
- 每個表都應該有一個主鍵嗎?
- 交易 - 何時使用,何時不使用 - 優點和缺點。
優化操作系統和硬體利用率
- my.cnf 中最重要的參數
應用層面的優化
- 優化工具
- 用於分析設置和顯示工具提示的腳本
資料庫複製
- 複製、集群 - 如何實現高可用性?
- 複製配置(ROW/PAGE、故障排除、重建、監視/診斷複製過程
MySQL 代理與 HAProxy
- 工作原理、可靠性(?)、優點、缺點
MySQL 集群
- 原則
- 配置
- 效率
- 安全
緩存
- 緩存 MySQL,臨時表
- 是否值得將關係移動到資料庫,還是將它們保留在代碼中更好?
- 子查詢和聯接 - 你應該使用它,如何優化?
解釋為查詢測試輔助工具
- 使用索引生成查詢
- 查詢分析 - 什麼工具,如何有效地做到這一點?
- 視覺設計工具 - 是否值得使用或更確切地說是簡化結構?
最佳實踐和命名約定 - 鍵、列、索引、表
構建最佳表結構
- 觸發器:在程式和觸發器中保持邏輯的良好做法 - 如何管理,如何測試,何時使用?
- 設計模式和反模式
是否值得切換到 MariaDB?
管理工具
- MySQL 工作臺
- 納維卡特
- 海蒂 SQL
Sites Published: