2014 Cloud Hero 資料庫應用上機考研究 ( 上 )
最近微軟有場 Cloud Hero 的活動,看起來考試的題目還蠻有趣的,就把他當作練習,把相關題目給做看看,順便把這些東西測試一下,或許以後有機會用到。
首先要先預備測驗的環境,看一下題目會用到 AlwaysOn , Database Audit , Peer to Peer Transaction Replication ,勢必只能安裝 Enterprise 或 Develop 版本,因此我在我的 Hyper-V 的環境上先建立四個 Windows 2012 R2 VM,分別是一台當 DC 主機,三台安裝 SQL Server 2014 當資料庫主機。
但如果要乖乖地按照步驟一台一台的安裝,可能太耗時了,因此這裡我借用 Stratesave Systems 的 SIDCHG64 的工具,這樣就可以很方便的複製 VHDX 來建立多台 VM。SIDCHG64 是一個可以協助更改作業系統 SID 和電腦名稱的工具,使用起來速度會比使用 Sysprep 來的快速很多。
除了安裝作業系統之外,安裝 SQL Server 也會花費不少時間,因此在安裝 SQL Server 的時候,我先選擇「進階」→「準備 SQL Server 獨立執行個體的映象」,後續過程跟安裝 SQL Server 大部分的步驟都相同,完成該步驟之後,實際上只是先複製你所需要的檔案到硬碟上,但是相關設定和服務都沒有真正建立。因此做完該步驟之後,就可以把 VM 給關閉,然後將 VHDX 再複製三份出來,用來預備做三台資料庫主機。
而複製出來的 VM ,在啟動之後,會如同一開始所說的,先使用 SIDCHG64 這個工具程式,來更換電腦的 SID 和電腦名稱 ( 因為同個網域不同的電腦不能有相同的 SID ),再重新啟動電腦之後,這時候再選擇 SQL Server 安裝程式上的「進階」→「完成備妥的 SQL Server 獨立執行個體的映象」,此時 SQL Server 就會很快的完成安裝作業,就可以很快地擁有三個測試環境的 SQL Server 了。
1.資料庫維護
A.「建立 Policy Management」: 建立限制預存程序的名稱的 Policy 和驗證多台資料庫主機的 Policy。
在這個部分必須要先有一個 Northwind 的資料庫,這個資料庫可以到 CodePlex 下載,或者是自己建立一個資料庫,這裡我單純一點就手動建立 Northwind 的資料庫。
接著選擇「管理」→「原則管理」→「原則」,按下滑鼠右鍵選單中選擇「新增原則」
輸入名稱之後選擇「檢查條件」→「新增條件」
按照題目規定設定 Facet 是「預存程序」,運算式為「@Name LIKE ‘sp%’」
並且將原則套用在特定的資料庫就完成了
而另外一個小題是要檢查其他 SQL Server 的設定,首先是透過「已註冊的伺服器」→「中央管理伺服器」
設定目前主機為主控台
加入要受管理的主機
此時先回到「原則管理」,新增一個要檢查的原則
此時就可以回到中央管理伺服器上選擇「中央管理伺服器動作」→「評估原則」
選擇原則的來源
就可以很方便的來檢查多台主機的設定了。
B.「啟動資料收集並檢視報表」
基本上這個題目單純看是蠻容易的,只要選擇「管理」→「資料收集」,然後分別透過「設定管理資料倉儲」和「設定資料收集」就可以很容易完成了。
但不知道是不是我誤會意思,感覺上這的部分有個陷阱在「蒐集其他虛擬機上 SQL Server 的相關資訊」,可能是只要把其他台的 SQL Server 上也都設定資料收集,然後將管理資料倉儲都指定到同一台上。如果每台主機 SQL Server Agent 有特定指定 Domain User 的身份去啟動的話,那這樣你在安裝第一台設定管理資料倉儲的時候,要特別將該使用者加入到 「dc_admin」的角色內,這樣才有辦法將資料上傳到共用的管理資料倉儲內;但如果每台主機 SQL Server Agent 的啟動身份都是 「NT Service\SQLServerAgent」 的時候,那就要指定認證配合 Agent Proxy 了。我想在這樣考試的時候,應該不會在安裝的時候特別指定啟動的身份,因此我先用後者的方式來實作。
首先我先在 SSMS 下利用「安全性」→「認證」,按下滑鼠右鍵選擇「新增認證」,此時指定一個網域的使用者的身份,這裡我就先偷懶把網域 Administrator 給指定來執行,這樣後面就可以免去一些設定。
並且在 「SQL Server Agent」→「Proxy」→「作業系統 (CmdExec)」按滑鼠右鍵選擇「新增 Proxy」,使用剛剛在前面所建立的認證。
接著就選擇「設定資料收集」,透過精靈的方式一步一步完成設定
要特別注意要勾選下方的「使用 SQL Server Agent Proxy 用於遠端上傳」,否則可能就無法順利將資料上傳。
這個時候這裡要指定剛剛在 Agent Proxy 裡面所新增的帳戶名稱
因為資料收集並不是 Real Time 的資料,他會每隔一段時間才把資料透過 SSIS 上傳到資料倉儲的主機上,因此需要過一陣子之後,才可以來查看相關報表了。