深入SQL Server 2008

《深入SQL Server 2008》是2011年人民郵電出版社出版的圖書,作者是Michael Coles、Fabio Ferracchiati、Robert Rae、Donald Farmer。

內容簡介

《深入SQL Server 2008》全面介紹了SQL Server 2008中新增的功能,包括完全重寫後的SQL Server Reporting Services、Analysis Services和Reporting Services的全部功能、新的數據倉庫、互動式Dundas向下搜尋報告、智慧型感知(IntelliSense)、新的活動監視器、集成的PowerShell等。讀者將從《深入SQL Server 2008》中學到使用全新的聲明式管理框架管理SQL Server的安裝,通過高可用性功能(如故障轉移群集)使用戶免遭服務中斷的影響,利用SQLServer 2008中新的性能增強功能加速套用的運行,利用全文搜尋找到所需內容,在資料庫中存儲、檢索和管理XML,商業智慧型工具(如Analysis Services和Reporting Services)的競爭優勢等內容。 《深入SQL Server 2008》既適合SQL Server前幾個版本的用戶閱讀,又適合想快速遷移到SQL Server 2008的資料庫專家參考。

目錄

目 錄

第一部分 SQL Server概覽

第1章 SQL Server 2008概述 2

1.1 SQL Server 2008願景 2

1.1.1 企業數據平台 3

1.1.2 超關係數據 3

1.1.3 動態開發 3

1.1.4 深入的商業洞察力 4

1.2 SQL Server 2008版本 4

1.3 伺服器整合 5

1.4 小結 6

第2章 SQL Server的安裝和配置 7

2.1 SQL Server安裝要求 7

2.2 升級到SQL Server 2008 8

2.2.1 規劃升級 8

2.2.2 使用升級顧問 10

2.2.3 執行升級 12

2.3 小結 18

第二部分 企業數據平台

第3章 策略管理 20

3.1 PM解決的需求 20

3.2 PM組件 21

3.2.1 管理目標 21

3.2.2 方面 21

3.2.3 條件 23

3.2.4 策略 26

3.3 示例策略 29

3.4 PM管理 32

3.4.1 策略狀態 32

3.4.2 PM安全 34

3.5 小結 35

第4章 高可用性 36

4.1 HA定義 36

4.2 資料庫鏡像 38

4.2.1 資料庫鏡像的工作方式 38

4.2.2 用T-SQL管理資料庫鏡像 42

4.2.3 用Management Studio管理資料庫鏡像 49

4.2.4 全文索引和鏡像 52

4.2.5 Service Broker和資料庫鏡像 52

4.2.6 客戶端程式和資料庫鏡像 52

4.2.7 監控資料庫鏡像 53

4.2.8 資料庫鏡像的性能代價 56

4.2.9 資料庫鏡像的局限 56

4.3 資料庫快照和鏡像 57

4.3.1 資料庫快照怎樣工作 57

4.3.2 用T-SQL管理快照 58

4.3.3 在鏡像上使用快照時的性能考慮 59

4.3.4 使用和監控資料庫快照 60

4.3.5 資料庫快照的限制 60

4.4 SQL Server中的Windows群集 61

4.5 SQL Server複製 61

4.5.1 快照複製 62

4.5.2 合併複製 62

4.5.3 事務複製 63

4.5.4 複製和鏡像 63

4.6 減少計畫內的停機時間 64

4.6.1 為運行中的系統添加CPU 64

4.6.2 為運行中的系統增加記憶體 64

4.6.3 執行線上索引操作 65

4.6.4 為表和索引分區 65

4.7 小結 65

第5章 性能 66

5.1 管理和監控資源 66

5.1.1 數據收集器 66

5.1.2 資源調控器 71

5.2 最佳化存儲 77

5.2.1 備份壓縮 77

5.2.2 數據壓縮 78

5.3 提高查詢性能 83

5.3.1 計畫指南支持 84

5.3.2  稀疏列 86

5.3.3 列集合 87

5.4 小結 90

第6章 安全 91

6.1 關閉資料庫引擎特性 91

6.1.1 遠程連線 92

6.1.2 專用管理員連線 93

6.1.3 .NET Framework 93

6.1.4 資料庫郵件 93

6.1.5 SQLMail 94

6.1.6 Service Broker、HTTP連線和資料庫鏡像 94

6.1.7 Web助手 94

6.1.8 xp_cmdshell擴展存儲過程 95

6.1.9 臨時遠程查詢 95

6.1.10 OLE自動化擴展存儲過程 95

6.1.11 SMO和DMO擴展對象 95

6.2 主體和安全對象 96

6.2.1 主體 96

6.2.2 安全對象 102

6.3 許可權 105

6.3.1 許可權類型 105

6.3.2 許可權管理 106

6.4 代碼訪問安全性 108

6.4.1 命令式和聲明式CAS 109

6.4.2 在SQL Server中使用CAS 109

6.5 SQL Server 2008審核 113

6.5.1 在何處寫審核數據 114

6.5.2 審核什麼 115

6.5.3 審核示例 117

6.5.4 管理審核 119

6.6 小結 120

第7章 SQL Server加密 121

7.1 加密密鑰 121

7.1.1 服務主密鑰 122

7.1.2 資料庫主密鑰 123

7.1.3 非對稱密鑰 125

7.1.4 證書 129

7.1.5 對稱密鑰 131

7.2 透明數據加密 135

7.2.1 啟用TDE 135

7.2.2 比較TDE和列級加密 136

7.3 可擴展密鑰管理 137

7.4 不用密鑰加密 138

7.5 散列和簽名數據 138

7.6 安全目錄視圖 139

7.7 查詢效率 140

7.8 小結 141

第8章 自動化和監控 142

8.1 SQL Server Agent 143

8.1.1 安排代理作業日程 143

8.1.2 執行代理作業的許可權 147

8.1.3 代理賬戶 150

8.1.4 共享作業計畫 152

8.1.5 記錄代理作業步驟的輸出 154

8.1.6 WMI事件和代理警報 154

8.1.7 代理性能計數器 155

8.1.8 代理升級 156

8.2 維護計畫 157

8.2.1 安排維護子計畫的日程 159

8.2.2 管理維護計畫連線 159

8.2.3 報告和記錄維護計畫 160

8.2.4 定義維護計畫任務 161

8.3 SQLCMD 163

8.3.1 連線到SQL Server 164

8.3.2 傳遞變數 164

8.3.3 使用專用管理員連線 165

8.3.4 創建腳本 165

8.4 SQL Server的PowerShell 166

8.4.1 PowerShell簡介 167

8.4.2 使用SQL Server PowerShell 169

8.5 資料庫郵件 173

8.5.1 配置資料庫郵件 174

8.5.2 傳送郵件 177

8.6 SQL Profiler 178

8.6.1 關聯到性能監控 180

8.6.2 顯示計畫 182

8.6.3 死鎖可視化 183

8.7 擴展事件 184

8.7.1 擴展事件組件 184

8.7.2 擴展事件示例:探測死鎖 186

8.8 小結 188

第9章 Service Broker 189

9.1 什麼是Service Broker 190

9.1.1 Service Broker構架 190

9.1.2 Service Broker場景 192

9.2 創建Service Broker套用 193

9.2.1 啟用Service Broker 193

9.2.2 創建訊息類型 194

9.2.3 創建協定 194

9.2.4 創建佇列 194

9.2.5 創建服務 195

9.2.6 創建Service Broker存儲過程 195

9.2.7 一個簡單的Service Broker示例 198

9.3 Service Broker路由和安全 203

9.3.1 創建分散式的Service Broker套用 203

9.3.2 分散式Service Broker的例子 205

9.4 訊息優先權 223

9.5 使用SSBDiagnose對Service Broker進行故障檢測 226

9.6 小結 227

第10章 整合全文搜尋 228

10.1 創建全文檢索目錄和索引 228

10.1.1 使用圖形化工具創建全文目錄和索引 229

10.1.2 使用T-SQL創建全文目錄和索引 235

10.2 使用iFTS查詢 237

10.2.1 FREETEXT謂詞搜尋 237

10.2.2 CONTAINS謂詞搜尋 238

10.2.3 FREETEXTTABLE和CONTAINSTABLE函式搜尋 240

10.3 管理詞庫檔案 241

10.3.1 編輯詞庫檔案 241

10.3.2 重新載入詞庫 243

10.4 使用非索引字表 244

10.5 搜尋文檔 244

10.5.1 為文檔創建全文索引 244

10.5.2 查詢文檔 245

10.6 管理iFTS 245

10.7 小結 247

第三部分 SQL Server 開發

第11章 SQL Server 2008中的新數據類型 250

11.1 SQL Server 2008中對空間數據的支持 250

11.1.1 GEOMETRY類型 251

11.1.2 GEOGRAPH類型 255

11.2 時間類型的改變 255

11.2.1 新的日期和時間數據類型 255

11.2.2 新的日期和時間系統函式 259

11.3 新的層次結構數據類型 261

11.4 檔案流支持 265

11.4.1 啟用檔案流功能 266

11.4.2 檔案流示例 267

11.5 小結 275

第12章 針對開發人員的T-SQL改進 276

12.1 DML特性 276

12.1.1 棄用舊式的外部連線 276

12.1.2 公共表表達式 277

12.1.3 TOP 285

12.1.4 擴展FROM子句 288

12.1.5 OUTPUT 296

12.1.6 排序函式 297

12.1.7 EXCEPT和INTERSECT 303

12.1.8 別名 305

12.1.9 MERGE 306

12.2 一般性的開發 309

12.2.1 錯誤處理 309

12.2.2 .WRITE對UPDATE語句的擴展 316

12.2.3 EXECUTE 317

12.2.4 代碼安全上下文 317

12.2.5 .NET聲明 320

12.2.6 聲明和設定變數 321

12.2.7 傳遞表值參數 322

12.3 小結 324

第13章 T-SQL為DBA所做的改進 325

13.1 鎖的改進 325

13.2 元數據視圖 326

13.2.1 兼容性視圖 327

13.2.2 目錄視圖 327

13.2.3 動態管理視圖和函式 329

13.3 SQL Server性能監視器 331

13.4 DDL觸發器 331

13.4.1 創建和修改DDL觸發器 332

13.4.2 刪除DDL觸發器 333

13.4.3 啟用和禁用DDL觸發器 333

13.4.4 使用目錄視圖枚舉DDL觸發器 333

13.4.5 使用eventdata()函式編用DDL觸發器 333

13.5 索引及其性能增強 335

13.5.1 在線上索引 336

13.5.2 創建索引期間的鎖控制 336

13.5.3 創建包含額外列的索引 337

13.5.4 修改索引 338

13.5.5 使用篩選索引 340

13.5.6 使用篩選統計信息 341

13.5.7 統計相關的日期時間列 341

13.5.8 為第三排序規則排序的性能改進 342

13.5.9 表和索引分區 344

13.5.10 使用索引視圖 349

13.5.11 使用分區對齊索引視圖 349

13.5.12 持久化計算列 350

13.6 快照 350

13.6.1 SNAPSHOT的隔離級別 351

13.6.2 資料庫快照 354

13.7 數據集成的改進 355

13.7.1 驗證資料庫頁 355

13.7.2 使資料庫進入應急狀態 356

13.8 小結 356

第14章 .NET集成 357

14.1 SQL Server .NET集成簡介 358

14.1.1 SQL Server為什麼託管CLR 358

14.1.2 何時使用CLR例程 358

14.1.3 何時不使用CLR例程 359

14.1.4 SQL Server如何託管.NET:構架概覽 359

14.2 SQL Server .NET編程模型 360

14.2.1 SQL Server託管的ADO-NET增強 360

14.2.2 SQL Server的.NET命名空間概覽 360

14.3 編寫CLR Stored Procedure 361

14.3.1 開始一個Visual Studio 2008SQL Sever Project 361

14.3.2 解剖Stored Procedure 364

14.3.3 添加參數 365

14.3.4 定義問題 365

14.3.5 使用SqlPipe 367

14.3.6 將所有這些組織在一起:編寫Stored Procedure體 369

14.3.7 測試Stored Procedure 371

14.3.8 調試Stored Procedure 372

14.3.9 在CLR例程中拋出異常 374

14.4 部署CLR例程 377

14.5 小結 378

第15章 編寫程式集 379

15.1 CLR用戶自定義類型 380

15.1.1 用戶自定義類型的應用程式 380

15.1.2 添加用戶自定義類型到SQLServer項目中 380

15.1.3 User-Defined Type的組成部分 381

15.1.4 一個簡單的例子:PhoneNumber類型 385

15.1.5 另一個例子:在StringArray類型 391

15.1.6 管理用戶自定義類型 398

15.2 CLR用戶自定義函式 398

15.2.1 添加用戶自定義函式到Visual Studio項目 399

15.2.2 Visual Studio 2008 User-Defined Function模板 399

15.2.3 SqlFunction特性 400

15.2.4 標量用戶自定義函式 400

15.2.5 表值型用戶自定義函式 403

15.2.6 管理CLR用戶自定義函式 406

15.3 CLR用戶自定義聚合 407

15.3.1 添加用戶自定義聚合到SQLServer項目中 407

15.3.2 用戶自定義聚合的組成部分 409

15.4 CLR用戶自定義觸發器 414

15.4.1 向SQL Server項目中添加CLR用戶自定義觸發器 415

15.4.2 編寫CLR觸發器 415

15.4.3 管理用戶自定義觸發器 418

15.5 管理程式集 419

15.6 小結 419

第16章 SQL Server與XML 420

16.1 什麼是XML 420

16.2 什麼是XPath和XMLDOM 421

16.2.1 XPath語法 422

16.2.2 XPath函式 424

16.2.3 XMLDOM: XML文檔對象模型 424

16.2.4 XPathDocument、XPathNavigator和XPathExpression類 425

16.3 XML存儲到資料庫 426

16.3.1 支持SOAP的SQL Server配置 427

16.3.2 OPENXML 428

16.3.3 使用注釋XML模式的XML視圖 433

16.3.4 SQLXML Updategram 437

16.3.5 XML大容量載入 439

16.4 從資料庫取出XML 441

16.4.1 FOR XML 442

16.4.2 利用模板改善性能 448

16.5 使用XML數據 448

16.5.1 “any”類型驗證 448

16.5.2 日期和時間支持 449

16.5.3 聯合和列表類型 450

16.6 .NET和COM中使用SQLXML編程 451

16.6.1 SQLXML類 451

16.6.2 SQLXML編碼示例 453

16.7 小結 458

第17章 SQL Server XML和XQuery支持 459

17.1 使用XML數據類型 460

17.1.1 了解SQL Server如何存儲XML 461

17.1.2 創建XML列 462

17.1.3 為模式創建設定許可權 466

17.1.4 約束XML列 467

17.1.5 檢查XML數據類型限制 468

17.2 在XML列中插入數據 468

17.2.1 使用SSIS插入XML數據 468

17.2.2 大容量載入XML 470

17.2.3 編寫自定義查詢或套用 470

17.3 查詢XML數據 471

17.3.1 XQuery 101 471

17.3.2 基本XML查詢方法 476

17.3.3 跨域查詢 478

17.4 修改XML數據 479

17.4.1 插入元素 479

17.4.2 刪除元素 480

17.4.3 改變節點值 480

17.4.4 XML修改的限制 481

17.5 建立XML索引以提高性能 481

17.5.1 了解XML索引如何工作 482

17.5.2 分析次級XML索引 483

17.6 全文搜尋和XML數據類型 484

17.7 目錄視圖與XML 484

17.8 套用與XML 485

17.9 XML Web服務支持 486

17.9.1 創建端點 486

17.9.2 使用高級Web服務 491

17.9.3 監視XML Web服務的性能 495

17.10 小結 495

第18章 LINQ to SQL 496

18.1 對象關係映射 496

18.2 實體生成工具 498

18.2.1 使用SQLMetal 498

18.2.2 使用Visual Studio的LINQ toSQL類設計器 499

18.2.3 分析生成的代碼 501

18.3 運行LINQ查詢 506

18.3.1 Select操作符 506

18.3.2 Where操作符 508

18.3.3 Join操作符 509

18.3.4 OrderBy操作符 510

18.4 DataContext類 511

18.4.1 插入、更新和刪除記錄 511

18.4.2 並發性衝突檢測 514

18.4.3 延遲查詢 516

18.4.4 延遲載入 519

18.4.5 執行存儲過程和用戶自定義函式 520

18.5 小結 522

第四部分 SQL Server商業智慧型

第19章 Report Services 524

19.1 Reporting Service組件 525

19.1.1 Report Server Service 526

19.1.2 元數據目錄 530

19.1.3 BIDS中的Report Designer 530

19.1.4 Report Designer Preview 532

19.1.5 SQL Server ManagementStudio集成 534

19.1.6 Reporting Services配置管理器 534

19.1.7 Reporting Services安全性 535

19.2 創建一個基本報表 536

19.2.1 啟動設計器 536

19.2.2 使用數據源和數據集 537

19.2.3 報表布局與預覽 538

19.2.4 使用表達式 538

19.2.5 部署報表 539

19.3 報表設計的高級功能 540

19.3.1 多值參數 540

19.3.2 選擇日期值的DatePicker 542

19.3.3 互動式排序 542

19.3.4 Analysis Services集成 543

19.3.5 Reporting Services數據源 547

19.3.6 自定義報表項 549

19.4 Visual Studio集成與ReportViewer控制項 549

19.4.1 使用WinForm控制項 550

19.4.2 通過編程使用ReportViewer控制項 552

19.4.3 LocalReport和ServerReport對象 553

19.5 SharePoint集成 554

19.6 最終用戶即席查詢和報表 555

19.6.1 報表生成器客戶端 555

19.6.2 報表模型和語義模型定義語言 556

19.7 報表呈現 557

19.7.1 導出報表 557

19.7.2 呈現大報表 559

19.8 數據區 559

19.8.1 Tablix數據區 559

19.8.2 更新後的Chart數據區 568

19.9 小結 572

第20章 分析服務 573

20.1 SQL Server 2008中Analysis Services的新特性 574

20.1.1 設計工具的改進 574

20.1.2 監視工具的改進 574

20.1.3 運行時改進 575

20.2 Analysis Services基礎知識 575

20.2.1 體系結構 575

20.2.2 開發環境 577

20.2.3 Analysis Services對象和概念 577

20.3 OLAP、OLTP和數據倉庫 578

20.3.1 OLAP和OLTP配置 579

20.3.2 OLAP概念 579

20.4 Analysis Services項目 581

20.4.1 新建一個Analysis Services項目 582

20.4.2 定義數據源 583

20.4.3 編輯數據源 585

20.4.4 定義數據源視圖 586

20.4.5 定義多維數據集 588

20.4.6 配置維度 591

20.4.7 部署項目 595

20.5 使用多維數據集 597

20.5.1 查看多維數據集結構 597

20.5.2 瀏覽多維數據集 598

20.5.3 管理顯示的數據 602

20.5.4 執行計算 603

20.5.5 使用KPI 606

20.6 使用Analysis Services腳本語言 609

20.6.1 創建一個包含命名查詢的DSV 609

20.6.2 查看ASSL 611

20.7 小結 611

第21章 集成服務 613

21.1 SSIS功能概述 613

21.1.1 何時使用SSIS 614

21.1.2 SSIS的新特性 615

21.2 SSIS集成開發環境 615

21.2.1 在Management Studio中連線到SSIS 616

21.2.2 在BIDS中創建一個新的SSIS項目 616

21.3 SSIS基礎知識 617

21.3.1 SSIS設計器概述 618

21.3.2 數據流示例 622

21.3.3 事件處理程式設計界面 630

21.4 控制流和數據流設計器任務 632

21.4.1 控制流容器和任務 632

21.4.2 數據流設計器任務 643

21.5 變更數據捕獲 648

21.5.1 啟用變更數據捕獲 649

21.5.2 用SSIS提取變更數據 650

21.6 日誌 650

21.7 動態包配置 653

21.8 變數 656

21.8.1 配置變數 657

21.8.2 創建變數 657

21.9 優先權約束 658

21.10 檢查點 659

21.11 事務 659

21.12 調試 660

21.12.1 控制流和數據流可視化調試 660

21.12.2 數據查看器 661

21.12.3 斷點 661

21.12.4 其他調試視窗 662

21.13 SSIS包處理 662

21.13.1 SSIS包部署實用工具 662

21.13.2 遷移SQL Server 2000 DTS包 662

21.13.3 調度SSIS包 663

21.14 小結 664

相關詞條

相關搜尋

熱門詞條

聯絡我們