很多開發人員都想成為一名DBA也有很多人一開始就把自己定位成為一名DBADBA究竟需要掌握些什麼知識和技能呢?以下是我做DBA工作和面試DBA時整理的一些DBA方面的三十個問題三十個大問題中還有許多小的問題涵括了SQLServer DBA比較多的技術知識點與大家分享下希望給有志做DBA的朋友們一些幫助
charvarcharnvarchar之間的區別(包括用途和空間占用);xml類型查找某個節點的數據有哪些方法哪個效率高;使用存儲過程和使用TSQL查詢數據有啥不一樣;
系統DB有哪些都有什麼作用需不需要做備份為什麼;損壞了如何做還原(主要是master庫);
有哪些操作會使用到TempDB;如果TempDB異常變大可能的原因是什麼該如何處理;
Index有哪些類型它們的區別和實現原理是什麼索引有啥優點和缺點;如何為SQL語句創建合適的索引索引創建時有哪些需要注意的項如何查看你創建的索引是否被使用;如何維護索引;索引損壞如何檢查怎麼修復;TSQL有更好的索引存在但是運行時並沒有使用該索引原因可能是什麼;
視圖上我們能建索引嗎如果能建的話會啥好處和壞處;視圖上建索引和表上建索引有啥區別;
Job信息我們可以通過哪些表獲取;系統正在運行的語句可以通過哪些視圖獲取;如何獲取某個TSQL語句的IOTime等信息;
在線系統一個表有五千萬記錄現在要你將其中的兩千萬條記錄導入到另一台服務器的某個表中導完後需要將這兩千萬數據刪除你預備如何處理優缺點是什麼;
數據庫服務器報磁盤空間不足你將如何應對要求盡快恢復;
臨時表表變量CTE(公用表表達式)有啥區別和聯系保存位置有啥不一樣使用時如何決定選哪種;
SQLServer有哪些隔離級別默認級別是哪個;數據庫有哪些主要的鎖類型;行版本控制是如何實現的;
死鎖如何跟蹤;阻塞如何跟蹤和查找;發現有問題的語句後如何進行處理;用Profile做跟蹤時一般我們需要跟蹤哪些事件;
Windows日志主要有哪幾種SQLServer日志一般保留幾個什麼情況下會產生新的SQL日志;數據庫日志恢復模式有哪幾種區別是什麼;數據庫日志突然變得很大而且你無法收縮可能的原因是什麼怎麼查找原因分別將如何處理;
分區表和分區視圖是什麼概念一般是在什麼情況下使用有啥好處;
如何比較兩個同結構的表數據的差異;如果表損壞了如何修復;如何在備份文件有問題的情況下盡量還原數據;如何將一個表的Identity屬性歸零;
CheckPoint和LazyWriter區別;DDL Trigger 和 DML Trigger有啥用區別是啥;
Mirroring 和Logshipping 的區別和使用場景;SQLServer的Mirroring與Oracle的哪像技術比較接近它們的區別是啥;
Mirroring的搭建步驟Mirroring三種模式區別Mirroring 中同步和異步的原理和要求搭建了Mirroring後需要對數據庫日志做什麼處理;
Replication配置和使用場景;Replication有哪幾種模式;PUSH和PULL有啥區別;搭建Replication後會產生一個什麼庫;報錯時用什麼來查看報錯的具體語句清理掉某個庫的Replication使用什麼語句查看同步鏈信息主要通過哪些表;
Replication發布端的表能truncate嗎為什麼;Replication Identity列如何處理缺失字段錯誤如何處理主鍵沖突錯誤如何處理如何跳過指定的錯誤訂閱端表被刪除了如何處理大規模改動數據如何處理;某條同步鏈因為其中的某個表一次性改動數據很大造成同步鏈的嚴重延時要求盡快恢復同步鏈如何處理
SSB(Service Broker)使用場景如何創建都會創建些什麼對象有啥優缺點主要通過什麼方式實現不同服務器之間的消息傳遞;可以通過哪些方式排錯;
跟蹤數據庫數據的變更有哪些方法它們(CDC(Change Data Capture)CT(Change Tracking)Trigger等)使用上的優缺點;
SQL調優步驟如何來判斷SQL語句存在問題怎麼定位問題如何解決這些問題;
數據庫故障排查步驟如何處理緊急數據庫問題;
如何考慮和制定數據庫備份計劃;公司要求對一個非常大的數據庫或者表做備份而且要求數據量盡可能少丟失你可能會采用什麼方法;
如果要你做數據庫監控你會關注那些指標(包括SQLServer和Windows)如何制定性能基線你使用過哪些監控軟件;
數據庫遷移步驟;重建一套比較大的測試系統(最少個數據庫實例)如果原來DB數據量都不大但DB比較多新搭建的系統數據都不需要如何快速實現;
創建Cluster 簡要步驟最少需要幾個IP需要安裝些什麼服務需要哪些固定的磁盤Raid如何設置磁盤如何劃分;SQLServerCluster與Mysql Cluster 和 Oracle RAC的區別等;
如果遇到一個性能不理想代碼復雜的存儲過程很難通過數據庫方面的調優來解決問題你如何說服開發人員修改它(可能開發人員並不願意修改);
你有沒有遇到過因為你的誤操作造成系統故障發生的情況你當時是如何處理的;如果沒有假定你誤刪了一個重要的表你該如何處理;
你准備成為一名什麼樣的DBA為此你將如何准備(或者你有怎樣的職業規劃准備怎樣度過你的DBA生涯);如果你進入公司你最想獲得的是什麼
From:http://tw.wingwit.com/Article/program/SQLServer/201405/30721.html