sys.servers (Transact-SQL)

適用於:SQL ServerAzure SQL 受控執行個體

包含每個連結或遠端伺服器註冊的資料列,以及具有 server_id = 0 之本機伺服器的資料列。

資料行名稱 資料類型 描述
server_id int 連結伺服器的本機識別碼。
name sysname 當server_id = 0 時 ,傳回的值就是伺服器名稱。

當server_id > 0 時 ,傳回的值是連結伺服器的本機名稱。
product sysname 連結伺服器的產品名稱。 值 「SQL Server」 表示另一個 SQL Server 實例。
供應商 sysname 連線到連結伺服器的 OLE DB 提供者名稱。

從 SQL Server 2019 (15.x)開始,「SQLNCLI」 值預設會對應至 Microsoft OLE DB Driver for SQL Server (MSOLEDBSQL)。 在舊版中,「SQLNCLI」 值會對應至 SQL Server Native Client OLE DB 提供者 (SQLNCLI11)
data_source nvarchar(4000) OLE DB 資料來源連接屬性。
位置 nvarchar(4000) OLE DB 位置連接屬性。 如果沒有,則為 Null。
provider_string nvarchar(4000) OLE DB 提供者字串連接字串屬性。

除非呼叫端具有許可權, ALTER ANY LINKED SERVER 否則為 Null。
catalog sysname OLE DB 目錄連接屬性。 如果沒有,則為 Null。
connect_timeout int 以秒為單位連接逾時,如果沒有,則為 0。
query_timeout int 查詢逾時以秒為單位,如果沒有則為 0。
is_linked bit 0 = 這是使用 sp_addserver 新增的舊式伺服器,具有不同的 RPC 和分散式交易行為。

1 = 標準連結伺服器。
is_remote_login_enabled bit RPC 選項已設定為啟用此伺服器的連入遠端登入。
is_rpc_out_enabled bit 已啟用傳出 (從此伺服器) RPC。
is_data_access_enabled bit 伺服器已啟用分散式查詢。
is_collation_compatible bit 如果沒有可用的定序資訊,則會假設遠端資料的定序與本機資料相容。
uses_remote_collation bit 如果為 1,請使用遠端伺服器所報告的定序;否則,請使用下一個資料行指定的定序。
collation_name sysname 要使用的定序名稱,如果只要使用本機,則為 Null。
lazy_schema_validation bit 如果為 1,在查詢啟動時不會檢查架構驗證。
is_system bit 此伺服器只能由內部系統存取。
is_publisher bit 伺服器是複寫發行者。
is_subscriber bit 伺服器是複寫訂閱者。
is_distributor bit 伺服器是複寫散發者。
is_nonsql_subscriber bit 伺服器是非 SQL Server 複寫訂閱者。
is_remote_proc_transaction_promotion_enabled bit 如果為 1,呼叫遠端預存程式會啟動分散式交易,並使用 MS DTC 來登記交易。 如需詳細資訊,請參閱 sp_serveroption (Transact-SQL) (部分機器翻譯)。
modify_date datetime 上次變更伺服器資訊的日期。
is_rda_server bit 適用于: 從 SQL Server 2016 (13.x) 開始。

伺服器已啟用遠端資料封存功能(已啟用延展功能)。 如需詳細資訊,請參閱 在伺服器上 啟用 Stretch Database。

備註

SQL Server Native Client (通常縮寫為 SNAC) 已從 SQL Server 2022 (16.x) 和 SQL Server Management Studio 19 (SSMS) 中移除。 不建議使用 SQL Server Native Client (SQLNCLI 或 SQLNCLI11) 和舊版 Microsoft OLE DB Provider for SQL Server (SQLOLEDB) 開發新的應用程式。 往後請改用新的 Microsoft OLE DB Driver (MSOLEDBSQL) for SQL Server 或最新的 Microsoft ODBC Driver for SQL Server。 如需 SQL Server 資料庫引擎元件隨附的 SQLNCLI(版本 2012 到 2019),請參閱此 支援生命週期例外狀況

權限

除非呼叫端具有 ALTER ANY LINKED SERVER 許可權,否則provider_string 中的 值一律為 Null。

檢視本機伺服器不需要許可權( server_id = 0)。

當您建立連結或遠端伺服器時,SQL Server 會建立與公用 伺服器角色的預設登入對應 。 預設登入對應表示所有登入都可以檢視所有連結和遠端伺服器。 若要限制這些伺服器的可見度,請執行 sp_droplinkedsrvlogin 並指定 locallogin 參數的 Null,以移除預設登入對應。

如果刪除預設登入對應,只有明確新增為連結登入或遠端登入的使用者,才能檢視他們具有登入的連結或遠端伺服器。 在預設登入對應之後,需要下列許可權才能檢視所有連結和遠端伺服器:

  • ALTER ANY LINKED SERVERALTER ANY LOGIN ON SERVER
  • setupadmin sysadmin 固定伺服器角色中的 成員資格

另請參閱

目錄檢視 (Transact-SQL)
連結的伺服器目錄檢視 (Transact-SQL)
sp_addlinkedsrvlogin (Transact-SQL)
sp_addremotelogin (Transact-SQL)