TOP
0
0
【簡體曬書區】 單本79折,5本7折,活動好評延長至5/31,趕緊把握這一波!
SQL Server 2008數據庫技術內幕(簡體書)
滿額折

SQL Server 2008數據庫技術內幕(簡體書)

人民幣定價:69 元
定價
:NT$ 414 元
優惠價
87360
領券後再享88折
海外經銷商無庫存,到貨日平均30天至45天
可得紅利積點:10 點
相關商品
名人/編輯推薦
目次
書摘/試閱

名人/編輯推薦

《SQL Server 2008數據庫技術內幕》非常適合那些和筆者一樣困擾于底層原理,又喜歡研究、驗證底層原理的讀者。《SQL Server 2008數據庫技術內幕》適合數據庫管理員等有一定經驗的相關技術人員使用,同時也可作為大學計算機專業師生數據庫技術的參考用書。

目次

第1篇 體系結構基礎
第1章 服務器體系結構與配置
1.1 啟動SQL Server服務器
1.1.1 使用net start命令啟動
1.1.2 使用Windows服務管理器工具啟動
1.2 客戶端工具
1.2.1 客戶端工具sqlcmd和SSMS 比較
1.2.2 sqlcmd的使用方法
1.2.3 SQL Server Management Studio的使用方法
1.3 服務器體系結構
1.4 內存結構
1.4.1 data cache
1.4.2 plan cache
1.4.3 Workspace緩存
1.5 lazywriter進程、checkpoint進程及worker線程
1.5.1 lazywriter進程
1.5.2 checkpoint進程
1.5.3 worker線程
1.6 數據庫及其構成
1.6.1 系統數據庫
1.6.2 文件與文件組
1.7 服務器配置
1.7.1 顯示服務器配置資訊
1.7.2 修改服務器配置參數
1.8 數據庫配置
1.8.1 顯示數據庫配置資訊
1.8.2 修改數據庫配置資訊
第2章 系統基表、系統視圖與resource數據庫
2.1 系統基表
2.1.1 查看所有系統基表
2.1.2 以DAC連接查看系統基表中的數據
2.1.3 連接APPLE服務器上默認SQL Server實例
2.2 系統視圖及其分類
2.2.1 SQL Server系統視圖分類
2.2.2 查詢resource數據庫存儲的系統視圖信息
2.3 訪問resource數據庫
2.3.1 查看resource數據庫信息
2.3.2 查看系統視圖定義
2.3.3 在服務器中附加resource數據庫
2.4 系統視圖的簡單應用:查詢表的結構
第2篇 堆表與索引數據存儲格式
第3章 檔存儲格式常用研究工具
3.1 幾個常用的dbcc命令
3.1.1 SQL Server產品與dbcc命令的關系
3.1.2 dbcc extentinfo、dbcc ind和dbcc page用法
3.1.3 跟蹤標記的啟用與關閉
3.1.4 dbcchelp—得到所有dbcc命令名稱及其語法資訊
3.1.5 dbcc extentinfo—得到對象分配到的區資訊
3.1.6 dbccind—得到對象分配到的數據頁資訊
3.1.7 dbccpage—以指定格式導出數據頁數據
3.2 十六進制數據編輯工具——WinHex
3.2.1 設置打開檔的方式
3.2.2 轉到指定偏移量
3.2.3 在WinHex中查看和修改SQL Server檔數據
3.2.4 使用dbcc writepage命令修改數據頁數據
第4章 數據頁結構
4.1 數據頁類型
4.2 應用dbcc fileheader和dbcc dbinfor命令查看數據頁內容
4.3 在數據文件中定位數據頁
4.4 數據頁結構
4.4.1 數據頁中三部分數據實例展示
4.4.2 頁頭
4.4.3 數據部分
4.4.4 偏移量列表
第5章 堆表數據的存儲方式
5.1 行內數據、行溢出數據和大對象數據
5.1.1 三類數據的含義
5.1.2 記錄長度不能超過8060字節
5.1.3 分配單元
5.2 記錄類型
5.3 記錄的存儲格式
5.4 行內數據與行溢出數據的存儲方式
5.4.1 行內數據的存儲方式
5.4.2 行溢出數據的存儲方式
5.5 forwarded/forwarding記錄的存儲
5.6 大對象數據的存儲
5.6.1 large value types out of row參數設置為0的情形
5.6.2 large value types out ofrow參數設置為1的情形
第6章 索引數據的存儲方式
6.1 堆表的非聚集索引結構
6.1.1 記錄的RowID
6.1.2 如何查看RowID
6.1.3 非聚集索引整體結構
6.1.4 葉結點索引記錄存儲方式
6.1.5 分支結點索引記錄存儲方式
6.2 聚集索引結構
6.2.1 葉結點記錄存儲方式
6.2.2 分支結點索引記錄存儲方式
6.2.3 聚集索引上創建的非聚集索引結構
6.3 約束與索引的關系
6.4 DML語句對索引的影響
6.4.1 delete語句對索引的影響
6.4.2 delete語句對索引影響的討論
6.4.3 insert操作對索引的影響
6.4.4 update操作對索引的影響
6.4.5 truncate table命令對索引的影響
第7章 多版本數據存儲方式
7.1 事務
7.1.1 事務的ACID屬性
7.1.2 commit與rollback命令
7.1.3 客戶端事務模式
7.1.4 事務隔離級別
7.2 開啟read_committed_snapshot參數後產生的多版本數據
7.2.1 參數開啟前後"行數據存儲方式"的變化
7.2.2 update產生的舊版本數據及版本資訊
7.2.3 delete操作產生的舊版本數據及版本資訊數據
7.3 開啟allow_snapshotjsolation參數產生的多版本數據
7.3.1 多版本數據產生的過程
7.3.2 allow_snapshot_isolation參數開啟前後"行記錄的存儲方式"
7.3.3 snapshot隔離級別下產生的多版本數據
7.3.4 開啟allow_snapshot_isolation參數是否解決讀等待寫
第3篇 空間管理與數據校驗
第8章 SQL Server空間管理數據頁
8.1 空間管理相關數據頁
8.2 可用區跟蹤—GAM及SGAM數據頁
8.2.1 GAM和SGAM數據頁的組合值
8.2.2 查找混合區可用數據頁的流程圖
8.2.3 新建數據文件的GAM與SGAM位圖數據
8.2.4 分配一個混合區後的GAM與SGAM位圖數據
8.2.5 分配多個混合區及多個專用區後的GAM與SGAM位圖數據
8.2.6 禁止單數據頁分配
8.3 數據頁可用空間跟蹤——PFS數據頁
8.3.1 PFS如何跟蹤數據頁可用空間
8.3.2 新數據庫文件的PFS數據
8.3.3 添加堆表數據對PFS的影響
8.3.4 刪除堆表數據對PFS的影響
8.4 差異備份內容跟蹤——DCM數據頁
8.4.1 DCM原理分析實例
8.4.2 全庫備份後的DCM數據
8.4.3 全庫備份後數據修改導致的DCM數據變化
8.4.4 全庫備份後的DCM數據重置
8.5 大容量操作改變的區跟蹤——BCM數據頁
8.5.1 bcp命令實例分析BCM原理
8.5.2 全庫備份或日誌備份後的BCM初始數據
8.5.3 大容量操作後的BCM數據
8.5.4 執行事務日誌備份的BCM數據重置
8.6 實體空間跟蹤——IAM數據頁
8.6.1 分配單元(allocation unit)及IAM鏈
8.6.2 IAM數據頁的內容
8.6.3 利用IAM數據頁檢索實體數據的過程
8.6.4 執行全表掃描的步驟
8.6.5 對表添加記錄時的步驟
第9章 堆表數據刪除或修改後的空間重用
9.1 delete操作引起的數據頁內容變化
9.1.1 delete操作引起數據頁內容的5種變化
9.1.2 展示數據變化的實例
9.2 刪除數據所占空間的重用
9.2.1 空閑空間足夠容納新記錄的情形
9.2.2 數據頁中數據的重新組織
9.3 修改數據後的空間重用
9.3.1 定長記錄
9.3.2 記錄長度未增長
9.3.3 記錄長度增長可存儲在頁尾空閑空間
9.3.4 記錄長度增長可存儲在重組後的頁尾空閑空間
9.3.5 記錄長度增長不能存儲在重組後的頁尾空閑空間
9.4 未附加條件的delete、truncate和drop table操作
9.4.1 準備測試數據
9.4.2 添加測試數據後的空間管理數據頁初始狀態
9.4.3 delete操作產生的重做數據量
9.4.4 delete操作引起的GAM、PFS和IAM數據變化
9.4.5 truncate操作產生的重做數據量
9.4.6 truncate操作引起的GAM、PFS和IAM數據變化
9.5 刪除操作導致的鎖
9.5.1 delete操作導致的鎖
9.5.2 truncate操作導致的鎖
9.5.3 droptable操作導致的鎖
第10章 數據頁I/O校驗和與殘缺頁保護
10.1 與數據頁I/O保護機制有關的頁頭數據
10.2 設置數據頁I/O保護機制
10.3 校驗和機制
10.3.1 校驗和原理
10.3.2 模擬I/O錯誤查看校驗和保護的效果
10.3.3 m_flagBits的作用
10.4 殘缺頁檢測機制
10.4.1 殘缺頁檢測實現原理
10.4.2 準備測試數據
10.4.3 驗證m_tornBits的構造過程
10.4.4 模擬數據頁I/O錯誤查看殘缺頁檢測效果
10.4.5 m_flagBits的作用
……
第4篇 重做日誌原理
第5篇 執行計劃重用與重編譯
第6篇 鎖的原理
第7篇 備份原理

書摘/試閱



這裏未顯示處於非活動狀態的重做記錄,並不是因為這些記錄被刪除。當執行delete操作刪除表中的記錄時,在這些記錄所在的數據頁中,對應被刪除記錄的槽中的偏移量數據會設置為0。而執行checkpoint操作後,這些非活動重做記錄所在日誌段中的數據卻不會發生任何改變,也就是說,非活動記錄並未刪除。
將數據庫設置為簡單恢復模式,使用fn_dblog函數查詢重做數據資訊時,日誌記錄從數據庫當前的MinLSN開始顯示,即只能顯示重做檔中的活動部分。
假設執行checkpoint操作得到MinLSN中的VLF序號為n,上次checkpoint操作的開始LSN中的VLF序號為m,若n>m,則序號為n,n+1,…,m—1的VLF都不包含活動日誌記錄,這些VLF的狀態會被此次checkpoint操作設置為可重用。
12.2 實例恢復過程
對事務執行commit操作會把內存緩沖區中的重做數據寫入重做日誌檔,並把commit操作作為單獨的日誌記錄寫入重做日誌檔,這些操作都完成即標志著此事務提交操作成功執行。commit操作並不會把事務修改的數據寫入磁盤的數據文件,也就是說,提交後的事務,其修改的數據可能並未存入磁盤。
另外,由於內存的壓力和checkpoint操作的執行,SQL Server可能已經把未結束事務修改過的部分數據寫入磁盤。
在任何時刻,數據庫中的事務都會存在以下兩種狀態或其中一種:
?提交的事務,其修改的數據尚未寫入磁盤。
?未提交的事務,其修改的數據已經部分寫入磁盤。
如果SQL Server服務某個時刻出現故障,則下次啟動時,SQL Server要先解決事務的數據完整性問題。首先執行前滾操作,把數據庫的狀態恢復到數據庫出現故障的時刻,如果提交的事務所修改的數據未寫入磁盤,則應通過應用重做日誌檔中的日誌記錄並將其重新寫入磁盤,如果未提交的事務所修改的數據已寫入磁盤,則執行undo操作將其從磁盤撤銷。這個過程稱為實例恢復。

您曾經瀏覽過的商品

購物須知

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

優惠價:87 360
海外經銷商無庫存,到貨日平均30天至45天

暢銷榜

客服中心

收藏

會員專區