2012年10月28日 星期日

如何在叢集上更換SQL Server的磁碟

        當有需要進行叢集(Cluster)上的磁碟更換時,其實是SQL Server的部份,其實有一定的步驟,手萬不要只用更換路徑或更改登錄檔的方式進行,因為這個方式你一定會遇到很多問題而且最後可能還是會有問題,由於近期內接到滿多使用者問到這個部份,所以我將方式整理如下,希望可以幫助大家在更換磁碟上減少問題。

Ex:
Disk group 1 (Old):
Disk T
Disk group 2 (New):
Disk S

設定方式:
 1、請您先將新磁碟上線。

2、開啟容錯移轉叢集管理員 -> 服務與應用程式,先將SQL Server的群組先行設定成 offline. 3、在SQL Server dependency list中,移除舊資料機的相依性

4、因為要將原本磁碟機上的資料拷貝到另外一顆新的磁碟機上,所以需先將原磁碟機重新上線才可以。


5、將SQL Server磁碟上的資料夾透過XCOPY的方式複制到新的磁碟上。

---Use the Xcopy command with the /O/X/E/H/K  to copy the files from Disk S to Disk R.

操作指令:
xopy /O/X/E/H/K S: T:


PS:請千萬注意,不要使檔案總管拖拉或複製貼上的方式,因為如此一來,可能檔案複製後,可能會有權限繼承的問題,所以請使用上述的方式。

6、確認新的磁碟上的資料夾權限與舊的磁碟上的權限設定是否相同。
7、在叢集管理員的介面上將舊的磁碟機代號換成其他的磁碟機


PS:如果無法進行更換時,代表您可能有其他的節點沒有正常上線,再請確認叢集中的所有節點都已正常的上線。

錯誤訊息:
無法取得可用的磁碟機代號
無法取得所有可用的磁碟機代號,因為此叢集的部份節點已經關閉。




8、將新的磁碟機換成原磁碟機的代號。

9、將新的磁碟機加入SQL Server的群組中。


10、將舊的磁碟機從SQL Server的群組中移除。。


11、將新的磁碟機加入SQL Server服務的相依性中。


12、將SQL Server設定成online,並確認是否有誤。

成功上線後,也請同時手動測試Failover是否可以成功。


關鍵字:SQL Server、

2012年10月20日 星期六

如何啟用與設定資料收集器(Data Collection)

        SQL Server的管理上,通常會遇到許多不同的問題,而這些問題,其實有時候很難一看到情況就知道問題為何與該如何處理,所以通常客戶遇到問題時,通常就會請客戶先進行檔案與相關資訊的收集。

         在以往我們可以透過SQL Profiler進行SQL Server上所有活動的收集,但有些問題畢竟關係到OS的層級,如CPU、Memory、Disk等的使用情況,所以也會搭配透過系統中的效能監視器(Performance Monitor)來進行。

         但如果你管理的SQL Server越來越多的時候,都需要每一台都設定效能監視器,在SQL Server 2008以後,推出了資料收集器(Data Collection)的功能,透過這個功能,可以同時收集不同台的SQL Server上的資訊到同一台Database上,所以此功能對許多DBA來說,可以算是一大福音,但其中有一個較大的限制,那就是你需要收集的資料庫必須是SQL 2008(含)以上的版本才可以,雖然我們的客戶中還是有許多仍在使用SQL 2000,但我想這個影響對許多公司來說,應該會越來越低。


Data Collection架構圖

系統架構



執行流程

系統環境:
Windows 2008 R2 SP1
SQL Server 2008 R2 SP1

設定流程:

1、設定資料倉儲(Data Warehouse)
1-1 開啟SQL Server Management Studio
1-2 點選 Management -> Data Collection -> Configure Management Data Warehouse


1-3 資料倉儲精靈畫面

1-4 選擇 [Create or update a management data warehouse]

1-5 選擇資料庫名稱,也可以點選 [New] 新增一個資料庫。


注意事項:
The Performance Data Collector is fully supported by the Enterprise and Standard editions of SQL Server 2008. Out of the box, it only works only on SQL Server 2008 instances, and is not backwards compatible with previous versions of SQL Server.


1-6 選擇 Login 與 Users 的對應,此步驟可以直接跳過即可。


1-7 設定儲存位置確認。

1-8 設定完成。

2、設定與啟用資料收集(Data Collection)
2-1 選擇 [Management] -> [Data Collection] -> [Configure Management Data Warehouse]

2-2 選擇 [Set up data collection]

2-3 設定儲存位置。
注意事項:
a. 此儲存位置只能選擇SQL Server版本為2008(含)以上才可以。
b. 快取的位置可以不用設定,如果維特空白時,會以系統的temp目錄為cache目錄。

2-4 資料倉儲設定完成。


3、啟用資料收集與報表預覽
3-1 展開 [Management] -> [Data Collection] 此時你就會看到已有三個資料收集設定完成。

3-2 此時我們立刻透過介面中的 [Collect and Upload Now] 將資料上傳與更新。


3-3 選擇 [Data Collection] -> [Reports] -> [Management Data Warehouse] -> [Server Activity History]

3-4 此時你就可以看到透過此主機上在統計區間內的相關統計資訊,當然也有其他兩種報表可以參考。



透過資料收集器 (Data Collection),可以快速的進行SQL Server的資料收集,當然更方便的事,你可以透過這個功能快速的產生相關的報表,相信這個功能可以讓許多DBA在管理上更簡單。

參考連結:
Introducing the Data Collector
http://msdn.microsoft.com/en-us/library/bb677248.aspx
Data Collector Architecture and Processing
http://msdn.microsoft.com/en-us/library/bb677355.aspx

關鍵字:SQL ServerData CollectionData Collector資料收集器Management Data warehouse

2012年10月18日 星期四

無法存取Report Manager與Report Server網址問題處理

今天接到一個很特別的情境,主要問題是無法開啟Report Manager與Report Server的網址,登入後會發生無法顯示網頁的錯誤,錯誤如下,由於這個問題非常的特殊,所以我問題處理過程與方法整理如下,提供大家參考。

系統環境:
Windows 2008 R2
SQL Server 2008 R2(10.50.2500)

事前跡象:
1、開啟Report Manager與Report Server的網址時會發生無法開啟網頁。
2、當重新產生URL時,Event Log會出現rsreportserver.config格式不正確的問題。
3、確認Reporting Service的log files,發現下列的問題。

library!ReportServer_0-1!1004!xx/xx/xxxx-xx:xx:xx:: e ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.SecureConnectionRequiredException: , Microsoft.ReportingServices.Diagnostics.Utilities.SecureConnectionRequiredException: The operation you are attempting requires a secure connection (HTTPS).;

錯誤訊息:
Failed to unload app domain DefaultDomain. The following exception occurred: Error while unloading appdomain. (Exception from HRESULT: 0x80131015).

解決方法:
C:\Program Files\Microsoft SQL Server\MSRS10.50.MSSQLSERVER\Reporting Services\ReportServer\rsreportserver.config的檔案,發現SecureConnectionLevel的值為2,將值修改為0,構重啟服務之後,問題即解決。

問題說明:
上述的問題主要是因為客戶曾經啟用SSL協定,但是後來將SSL停用後,由於移除的方式問題,所以造成網站無法存取,而且當我存取網站的時候由於是以HTTP,但是錯誤訊息仍然顯示我是以HTTPS的方式進行,所以修改SecureConnectionLevel的設定值之後,問題即可解決。

參考網址:
SecureConnectionLevel Property (WMI MSReportServer_ConfigurationSetting)
http://msdn.microsoft.com/en-us/library/ms155384.aspx


關鍵字:SSRSReporting Service0x80131015SecureConnectionLevel

2012年10月13日 星期六

SQL Server - 如何更換產品金鑰

        最近陸續接到許多客戶的詢問,在安裝SQL Server的評估版後,由於評估的日期已到,所以造成無法使用,因此想要了解如何更換產品金鑰,其實更換的方式非常的簡單,不需要透過更換登錄值的方式,只需透過下列的兩個方法即可進行金鑰的更換。

更換金鑰方式:

1、透過指令的方法如下:
Setup.exe /q /ACTION=editionupgrade /INSTANCENAME=<MSSQLSERVER or instancename> /PID=<PID key for new edition>" /IACCEPTSQLSERVERLICENSETERMS

2、透過安裝光碟,並請依照下面的步驟進行維護安裝,即可輸入新的產品金鑰。

  • Run the setup.exe again.
  • In the SQL Server Installation Center, choose Maintenance --> Edition Upgrade
  • Click Next and Next, then you come to Product Key page, select Enter the product key to validate the instance of SQL Server 2008 which installed on you OS
  • Enter a valid product key, after installed, it should be succeeded.

關鍵字:SQL ServerChange Product KeyEvaluationEdition Upgrade

2012年10月2日 星期二

Reporting Service - 不分頁輸出

        在報表的分頁都是由Reporting Service自動判定並加以控制,當然也有接到許多使用者的需求針對分頁的部份進行討論,如匯出到Excel後的分頁討論等,而最近接到一個需求(有點特別),那就是由於報表的部份,需要只單純瀏覽,所以想停用報表中分頁的功能,其實此方式非常的簡單,你只需將報表中下列的值設定成0即可。

屬性位置:
Report -> InteractiveSize -> InteractiveHeight -> 0



參考連結:
控制報表分頁
http://msdn.microsoft.com/zh-tw/library/ms156282(v=sql.90).aspx

關鍵字:Report、InteractiveHeight、Page Break、Single Page、報表分頁