作 者:黃釗吉 熊章立 著
定 價:99
出 版 社:人民郵電出版社
出版日期:2019年02月01日
頁 數:473
裝 幀:簡裝
ISBN:9787115502421
微軟MVP攜手Linux運維專家傾力奉獻手把手講解知名數據庫產品SQL Server突出運維監控,提供實際優化案例和腳本文件,方便讀者動手實踐
●第 1篇 基礎篇第 1章 SQL Server On Linux簡介 21.1 為何選擇Linu臺的SQL Server 21.2 SQL Server關鍵組件簡介 41.3 SQL Server On Linux新特性簡介 61.3.1 數據庫引擎 61.3.2 SQL Server Integration Services 81.3.3 機器學習 81.3.4 兼容Linu臺 91.3.5 其他 91.4 SQL Server On Linux新玩法 91.5 SQL Platform Abstraction Layer 101.5.1 PAL簡介 101.5.2 進程模型 121.5.3 小結 121.6 本書結構 131.7 總結 14第 2章 Linux基礎及安裝部署 15 2.1 背景介紹 15 2.2 前期規劃 17 2.3 基礎框架 19 2.4 部署 202.4.1 服務器命名及配置 212.4.2 安裝過程 21 2.5 預配置 432.5.1 查看當前IP地址 442.5.2 檢查網絡連通性 452.5.3 遠程登錄 46 2.6 總結 48第3章 安裝配置SQL Server On Linux 49 3.1 安裝前的準備工作 49 3.2 安裝攻略 503.2.1 操作繫統環境檢查 513.2.2 安裝SQL Server 533.2.3 驗證安裝 553.2.4 安裝SQL Server命令行工具 563.2.5 嘗試使用 58 3.3 環境配置 593.3.1 更新/卸載/重裝SQL Server 603.3.2 檢查配置存儲庫信息 653.3.3 安裝SQL Server代理 673.3.4 SQL Server實例配置 68 3.4 注意事項 78 3.5 安裝示例數據庫 793.5.1 下載備份文件 793.5.2 移動文件 82 3.6 總結 83第 2篇 管理篇第4章 Linux基礎運維 86 4.1 常用指令 864.1.1 文件或目錄 864.1.2 編輯或查看指令 884.1.3 網絡相關 954.1.4 繫統層面 984.1.5 其他雜項 104 4.2 基礎運維 1064.2.1 服務部署 1064.2.2 指標 1154.2.3 安全 1224.2.4 調優 1304.2.5 Shell入門 135 4.3 總結 143第5章 Linux基礎監控 144 5.1 分布式監控繫統Zabbix 1455.1.1 安裝服務端 1455.1.2 安裝配置客戶端 1495.1.3 告警設置 154 5.2 Grafana展現 1625.2.1 部署 1625.2.2 數據源選擇 1635.2.3 豐富的面板 1675.2.4 定制 170 5.3 SQL Server監控 175 5.4 總結 180第6章 服務及空間管理 181 6.1 服務器的服務及空間管理 1816.1.1 Windows服務及空間管理 1816.1.2 Linux服務及空間管理 1846.1.3 小結 187 6.2 SQL Server服務及空間管理 1886.2.1 SQL Server服務管理 1886.2.2 SQL Server空間管理 191 6.3 SQL On Linux備份還原 1986.3.1 數據庫備份 1996.3.2 數據庫還原 2036.3.3 數據庫備份還原新用法 207 6.4 總結 207第7章 SQL Server On Linux數據庫安全 208 7.1 安全概念 208 7.2 始終加密 2097.2.1 AE簡介 2097.2.2 AE演示 2097.2.3 創建密鑰 2147.2.4 小結 216 7.3 動態數據屏蔽 2167.3.1 DDM簡介 2177.3.2 DDM屏蔽規則 2177.3.3 DDM演示 2177.3.4 DDM性能與安全 219 7.4 行級安全性 2217.4.1 RLS演示 2217.4.2 小結 223 7.5 時態表 2237.5.1 SQL Server時態表 2247.5.2 SQL Server時態表的演示 224 7.6 總結 228第8章 Linux自動化運維演示 229 8.1 expect 2298.1.1 Shell中的expect 2298.1.2 Python模塊中的pexpect 2318.1.3 Python模塊中的paramiko 2338.1.4 小結 234 8.2 Ansible入門 2348.2.1 安裝部署 2348.2.2 基本操作 2378.2.3 進階 2388.2.4 架構圖及架構說明 239 8.3 總結 240第9章 數據庫監控 241 9.1 監控理論 2419.1.1 監控的內容和目的 2429.1.2 監控的方法/流程 2449.1.3 監控的意義 2459.1.4 小結 246 9.2 監控工具 2469.2.1 SQL跟蹤 2479.2.2 擴展事件 2489.2.3 動態管理視圖/動態管理函數 2489.2.4 性能計數器及數據收集器集 2489.2.5 SQL Server新工具 2549.2.6 專家工具 2559.2.7 傳統工具 2579.2.8 使用方法 257 9.3 監控分析 258 9.4 監控展示 258 9.5 總結 260第3篇 性能篇第 10章 SQL Server性能優化方法論 262 10.1 性能簡介 262 10.2 性能優化的誤區 263 10.3 常見影響因素 26510.3.1 應用程序的體繫結構 26510.3.2 應用程序設計 26510.3.3 數據庫設計 26610.3.4 事務和隔離級別 26610.3.5 T-SQL編碼 26610.3.6 硬件資源及部署 26710.3.7 SQL Server配置 267 10.4 常規性能優化流程 269 10.5 擴充閱讀 270 10.6 優化Checklist 27110.6.1 數據庫設計 27110.6.2 語句設計 27110.6.3 配置 272 10.7 總結 272第 11章 SQL Server On Linux故障偵測 273 11.1 SQL Server查詢生命周期 27311.1.1 查詢優化和執行 27311.1.2 小結 282 11.2 常用故障偵測手段 28211.2.1 擴展事件 28211.2.2 常規偵測手段 28811.2.3 查詢存儲 289 11.3 總結 294第 12章 SQL Server性能優化新工具 295 12.1 簡介 295 12.2 查詢存儲 29512.2.1 查詢存儲中的信息 29612.2.2 查詢存儲包含的內容 29612.2.3 何時使用查詢存儲 29912.2.4 查詢存儲很好實踐 302 12.3 自動優化 30312.3.1 自動優化的工作原理 30312.3.2 自動計劃更正 30412.3.3 自動優化的演示 304 12.4 自適應查詢處理 30812.4.1 舊式優化行為 30812.4.2 新式優化行為 308 12.5 實時查詢統計信息 316 12.6 總結 318第 13章 SQL Server索引優化 319 13.1 簡介 319 13.2 索引基礎 32013.2.1 索引目標 32013.2.2 索引組織和分類 32013.2.3 索引術語 32213.2.4 索引訪問方式 32213.2.5 SARG 32313.2.6 列存儲索引 324 13.3 統計信息基礎 32913.3.1 查找關於索引的信息 32913.3.2 簡要說明 33113.3.3 常規建議 331 13.4 索引種類 33213.4.1 堆表 33213.4.2 聚集索引 33213.4.3 非聚集索引 33213.4.4 其他索引類型 33213.4.5 索引變種 332 13.5 索引分析與優化 33313.5.1 問題隔離 33313.5.2 索引問題分類 33413.5.3 索引優化 335 13.6 索引建議 34613.6.1 索引誤區 34613.6.2 索引維護建議 347 13.7 總結 347第 14章 SQL Server等待信息 348 14.1 我們在等待什麼 348 14.2 簡介 34914.2.1 等待的含義 34914.2.2 需要等待信息的原因 35014.2.3 保存等待信息 350 14.3 等數據 351 14.4 並行執行 35114.4.1 CXPACKET 35214.4.2 CXPACKET的潛在問題 35314.4.3 降低CXPACKET等待 35314.4.4 CXPACKET深度分析 35414.4.5 CXPACKET建議 354 14.5 多任務等待 35514.5.1 SOS_SCHEDULER_YIELD 35514.5.2 多任務類型 35714.5.3 多任務潛在問題 35814.5.4 降低多任務等待 358 14.6 I/O等待 358 14.7 備份和還原等待 362 14.8 鎖定等待 362 14.9 數據庫日志等待 36414.9.1 WRITELOG等待 36414.9.2 降低WRITELOG等待 36414.9.3 擴充說明 36414.9.4 Logbuffer等待 36514.9.5 Logbuffer的潛在問題 36514.9.6 降低Logbuffer等待 366 14.10 外部資源等待 36614.10.1 MSSQL_XP等待 36614.10.2 降低MSSQL_XP等待 36614.10.3 OLEDB鏈接服務器等待 36614.10.4 降低OLEDB等待 36614.10.5 OLEDB擴展說明 367 14.11 其他常見等待類型 36714.11.1 RESOURCE_SEMAPHORE 36714.11.2 THREADPOOL 36714.11.3 PAGELATCH_XX 36714.11.4 ACCESS_METHOD_XX 36714.11.5 FGCB_ADD_REMOVE閂鎖 36814.11.6 DBCC_XX 36814.11.7 Miscellaneous 368 14.12 案例 368 14.13 總結 369第 15章 事務與阻塞 370 15.1 環境準備和術語介紹 37015.1.1 環境準備 37015.1.2 術語 371 15.2 事務與ACID 37115.2.1 事務隔離級別和數據一致性 37215.2.2 鎖類型 37315.2.3 鎖演示 374 15.3 阻塞 37815.3.1 阻塞演示 37815.3.2 阻塞偵測方法 37815.3.3 阻塞信息實時偵測 37915.3.4 阻塞信息收集 383 15.4 死鎖 38515.4.1 死鎖演示 38615.4.2 死鎖偵測 38815.4.3 降低死鎖概率 389 15.5 鎖升級 38915.5.1 鎖升級概述 38915.5.2 鎖升級偵測 390 15.6 事務設計建議 392 15.7 總結 394第 16章 In-Memory OLTP簡介 395 16.1 案例演示 395 16.2 技術簡介 39816.2.1 術語簡介 39816.2.2 In-Memory的目標 39816.2.3 體繫結構 39916.2.4 內存優化表索引 400 16.3 快速上手 40116.3.1 創建數據庫 40116.3.2 創建表 40216.3.3 Natively Compiled存儲過程 40316.3.4 Interpreted T-SQL 404 16.4 注意事項 405 16.5 很好實踐 40716.5.1 索引優化 40716.5.2 其他建議 408 16.6 總結 408第4篇 架構篇第 17章 SQL Server On Linux高可用介紹 410 17.1 簡介 41017.1.1 使用AlwaysON的優點 41017.1.2 Linux上的AlwaysON可用性組 41117.1.3 環境準備 412 17.2 安裝過程 41317.2.1 創建AG 41317.2.2 配置集群管理器Pacemaker 422 17.3 警報 427 17.4 讀寫分離 432 17.5 常見故障偵測手段 43517.5.1 AlwaysON的常見問題 43517.5.2 參考工具 436 17.6 總結 438第5篇 案例篇第 18章 Linux運維案例 440 18.1 被黑 440 18.2 內存溢出 445 18.3 打開過多文件 446 18.4 從刪庫到“跑路” 448 18.5 總結 450第 19章 數據庫運維案例 451 19.1 簡介 451 19.2 案例分享 451 19.3 其他案例 456 19.4 總結 458附錄附錄A SQL Server DBA及Linux管理員面試題分析 460附錄B DBA與Linux管理Checklist 464附錄C SQL Server表關聯細節 468附錄D Linux內核參數說明 471
隨著微軟公司的開源策略逐步深化,其數據庫拳頭產品SQL Server不僅能運行在Windows平臺上,經過一繫列產品迭代,還能穩定地運行在主流的Linu臺中,並且越來越受到企業的認同。為了跟上時代的步伐,從業者有必要盡快掌握Linux上的SQL Server的使用方法。本書屬於入門級別的技術圖書,主要面向對微軟SQL Server有初步認識,並且希望掌握在Linux上的SQL Server運維及性能優化的數據庫從業人員。當然,本書也適合在校學生學習使用,以便為後續就業打下良好的基礎。本書以實操為主,講解了在Linux上SQL Server的安裝、配置、監控及高可用搭建等內容,同時融入了作者10年工作經歷中總結的Linux及SQL Server性能優化的經驗,以協助讀者更快入門。本書包括基礎篇、管理篇、性能篇、架構篇、案例篇共計5大板塊,每個板塊包括若干章內容,每章力求講清楚、講等
黃釗吉 熊章立 著
黃釗吉10年SQL Server開發和運維經驗,從事過電子商務網站後臺開發、銀行績效繫統數據庫開發,以及服飾類ERP繫統、信用卡繫統(基於AWS)和大型電商倉儲繫統數據庫的運維工作。6屆微軟數據平臺MVP(2013-2018),前CSDN論壇SQL Server大版版主,CSDN博客專家,博客訪問量超過228萬。個人創作圖書《SQL Server性能優化與管理的藝術》,與人聯合翻譯《Windows PowerShell實戰指南(第2版)》。擁有MCTIP Database Administrator 2008、MCSE Data Management and Analytics等多個技術認等