茫茫網海中的冷日 - 對這文章發表回應
茫茫網海中的冷日
         
茫茫網海中的冷日
發生過的事,不可能遺忘,只是想不起來而已!
 恭喜您是本站第 1675411 位訪客!  登入  | 註冊
主選單

Google 自訂搜尋

Goole 廣告

隨機相片
IMG_60D_00013.jpg

授權條款

使用者登入
使用者名稱:

密碼:


忘了密碼?

現在就註冊!

對這文章發表回應

發表限制: 非會員 可以發表

發表者: 冷日 發表時間: 2019/3/30 6:04:17

SQL Server 2008 介面區組態(Surface Area Configuration,SAC):啟用 Ad Hoc Distributed Queries。訊息 15281,SQL Server 已封鎖元件 'Ad Hoc Distributed Queries' 的 STATEMENT 'OpenRowset/OpenDatasource' 之存取,因為此元件已經由此伺服器的安全性組態關閉。

在 SQL Server 2008 版本上,若要執行 OPENROWSET 或是 OPENDATASOURCE 時,遭遇以下的錯誤訊息,並請參考下圖所示:
訊息 15281,層級 16,狀態 1,行 1
SQL Server 已封鎖元件 'Ad Hoc Distributed Queries' 的 STATEMENT 'OpenRowset/OpenDatasource' 之存取,因為此元件已經由此伺服器的安全性組態關閉。
系統管理員可以使用 sp_configure 來啟用 'Ad Hoc Distributed Queries' 的使用。
如需有關啟用 'Ad Hoc Distributed Queries' 的詳細資訊,請參閱《SQL Server 線上叢書》中的<介面區組態>(Surface Area Configuration)。


在「介面區組態」部分,預設是將設定 「AdHocRemoteQueriesEnabled」功能給「停用」的。
根據預設,SQL Server 不允許使用 OPENROWSET 和 OPENDATASOURCE 進行特定分散式查詢。
當啟用選項時,SQL Server 就會允許特定存取。當此選項未設定或設定為 0 時,SQL Server 就不允許特定存取。


若要啟用「Ad Hoc Distributed Queries」這項功能,請參考以下的方式:
  • 使用 SSMS 管理工具。

  • 使用T-SQL:sp_configure。

(一)使用 SSMS 管理工具
使用 SQL Server Management Studio 中的「Facet」來設定啟用和停用 SQL Server 功能。

步驟01. 使用 SQL Server Management Studio,連接到目標的 SQL Server。
步驟02. 在 [物件總管] 中,點選目標伺服器,滑鼠右鍵,選擇「Facet」。請參考下圖所示:


步驟03. 在「檢視 Facet」視窗,在右邊的「Facet」區域,選擇「介面區組態」。
步驟04. 在右下角的「Facet屬性」區域,選擇所需要啟用或是停用的功能。請參考下圖所示:


步驟05. 點選「確定」,完成設定後,就可以直接使用,無需重新啟動 SQL Server。



(二)使用T-SQL

--01 查詢是否已經啟用 Ad Hoc Distributed Queries
SELECT name N'組態選項的名稱', value N'針對這個選項所設定的值', value_in_use N'這個選項目前有效的執行值',
description N'組態選項的描述'
FROM sys.configurations
WHERE name='Ad Hoc Distributed Queries'
--02 設定啟用 Ad Hoc Distributed Queries
USE master;
GO
EXEC sp_configure 'show advanced option', '1';
GO
RECONFIGURE
GO
--
EXEC sp_configure 'Ad Hoc Distributed Queries', '1'
RECONFIGURE WITH OVERRIDE
GO
/* 顯示的訊息
組態選項 'show advanced options' 從 1 變更為 1。請執行 RECONFIGURE 陳述式來安裝。
組態選項 'Ad Hoc Distributed Queries' 從 0 變更為 1。請執行 RECONFIGURE 陳述式來安裝。
*/
--03 再度查詢是否已經啟用 Ad Hoc Distributed Queries
SELECT name N'組態選項的名稱', value N'針對這個選項所設定的值', value_in_use N'這個選項目前有效的執行值',
description N'組態選項的描述'
FROM sys.configurations
WHERE name='Ad Hoc Distributed Queries'



參考資料:
SQL Server 2008 介面區組態(Surface Area Configuration,SAC):啟用 xp_cmdshell
http://sharedderrick.blogspot.com/2009/04/sql-server-2008-surface-area.html

SQL Server 2005 Surface Area Configuration(SAC,介面區組態)
http://sharedderrick.blogspot.com/2009/05/clr-sql-server-2005.html

原文出處:德瑞克:SQL Server 學習筆記: SQL Server 2008 介面區組態(Surface Area Configuration,SAC):啟用 Ad Hoc Distributed Queries。訊息 15281,SQL Server 已封鎖元件 'Ad Hoc Distributed Queries' 的 STATEMENT 'OpenRowset/OpenDatasource' 之存取,因為此元件已經由此伺服器的安全性組態關閉。
內容圖示
url email imgsrc image code quote
樣本
bold italic underline linethrough   












 [詳情...]
validation picture

注意事項:
預覽不需輸入認證碼,僅真正發送文章時才會檢查驗證碼。
認證碼有效期10分鐘,若輸入資料超過10分鐘,請您備份內容後,重新整理本頁並貼回您的內容,再輸入驗證碼送出。

選項

Powered by XOOPS 2.0 © 2001-2008 The XOOPS Project|