Microsoft 將 Microsoft SQL Server 2008 R2 Service Pack 1 修正為一個可下載的檔案。 因為修正程式是累加的,所以每個新發行版本本都包含舊版 SQL Server 2008 R2 Service Pack 1 修正版本中所包含的所有修復程式及所有安全性修正程式。
徵狀
當您在 Microsoft SQL Server 2008 R2 或 Microsoft SQL Server 2012 中的 db_owner 角色下執行資料庫引擎調整顧問時,就會發生存取違規,而且您會收到下列錯誤訊息:
微調程式意外退出。
注意事項
-
當資料庫引擎優化顧問嘗試將記錄插入 msdn 資料庫中的資料庫引擎調整程式調整記錄資料表中的錯誤資料表時,就會發生這個問題。 當資料庫引擎優化顧問無法調整時,該記錄會插入到工作負荷中每個事件的資料表中。
-
當問題發生時,會在下列 SQL Server 記錄資料夾中產生袖珍轉儲檔案:SystemDrive: \Program Files (x86) \Microsoft SQL Server\100\Shared\ErrorDumps
-
如果您執行的是 sysadmin 固定伺服器角色的成員,當您執行資料庫引擎優化顧問時,就不會發生這個問題。
原因
之所以會發生這個問題,是因為針對 DTAEngine 檔案中的不同角色使用了不同的程式碼路徑,而且 db_owner 角色的程式碼中有一個缺陷。
解決方案
累積更新資訊
SQL Server 2012 的累積更新套件 1 Service Pack 1
此問題的修正程式是在累積更新1中第一次發行。如需有關如何取得適用于 SQL Server 2012 Service Pack 1 的累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:
2765331 SQL Server 2012 的累積更新套件 1 Service Pack 1注意: 因為組建是累加的,所以每個新的修正程式版本都包含先前 SQL Server 2012 修正版本中所包含的所有修復程式及所有安全性修正程式。 我們建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:
2772858 在發行 SQL Server 2012 Service Pack 1 之後發行的 SQL Server 2012 組建
SQL Server 2008 R2 Service Pack 2
此問題的修正程式是在累積更新3中第一次發行。如需有關如何取得適用于 SQL Server 2008 R2 Service Pack 2 之累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:
2754552 SQL Server 2008 R2 Service Pack 2 的累積更新套件3 注意: 因為組建是累加的,所以每個新的修正程式版本都包含舊版 SQL Server 2008 R2 Service Pack 2 (修正版本)所包含的所有修復程式及所有安全修正程式。 我們建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:
2730301 在發行 SQL Server 2008 R2 Service Pack 2 之後發行的 SQL Server 2008 R2 組建
SQL Server 2012
此問題的修正程式是以累積更新4第一次發行。如需如何取得此 SQL Server 2012 累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:
2758687 SQL Server 2012 的累積更新套件4 注意: 因為組建是累加的,所以每個新的修正程式版本都包含先前 SQL Server 2012 修正版本中所包含的所有修復程式及所有安全性修正程式。 我們建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:
2692828 在發行 SQL Server 2012 之後發行的 SQL Server 2012 組建
SQL Server 2008 R2 Service Pack 1
此問題的修正程式是在累積更新8中第一次發行。如需有關如何取得適用于 SQL Server 2008 R2 Service Pack 1 之累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:
2723743 SQL Server 2008 R2 Service Pack 1 的累積更新套件8注意: 因為組建是累加的,所以每個新的修正程式版本都包含先前 SQL Server 2008 R2 Service Pack 1 修正版本中所包含的所有修復程式及所有安全修正程式。 我們建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:
2567616 在發行 SQL Server 2008 R2 Service Pack 1 之後發行的 SQL Server 2008 R2 組建
狀態
Microsoft 已確認本篇文章<適用於>一節所列之 Microsoft 產品確實有上述問題。
因應措施
若要解決此問題,請在 SQL Server 2008 R2 中,將資料庫引擎調諧顧問使用者新增至 sysadmin 固定伺服器角色。