sys.servers (Transact-SQL)

適用対象: SQL Server Azure SQL Managed Instance

登録されているリンク サーバーまたはリモート サーバーごとの行と、 server_id = 0 のローカル サーバーの行が含まれます。

列名 データ型 説明
server_id int リンク サーバーのローカル ID。
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 データ ソース接続プロパティ。
location 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 = RPC と分散トランザクションの動作が異なる 、sp_addserverを使用して追加された古いスタイルのサーバーです。

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 に切り替えてください。

アクセス許可

呼び出し元に ALTER ANY LINKED SERVER 権限がない限り、 provider_string の値は常に NULL です。

ローカル サーバーを表示するためにアクセス許可は必要ありません (server_id = 0)。

リンク サーバーまたはリモート サーバーを作成すると、SQL Serverはパブリック サーバー ロールへの既定のログイン マッピングを作成します。 既定のログイン マッピングは、すべてのログインですべてのリンク サーバーとリモート サーバーを表示できることを意味します。 これらのサーバーの可視性を制限するには、 sp_droplinkedsrvlogin を実行し、 locallogin パラメーターに NULL を指定して、既定のログイン マッピングを削除します。

既定のログイン マッピングが削除された場合、リンク ログインまたはリモート ログインとして明示的に追加されたユーザーのみが、ログインを持つリンクサーバーまたはリモート サーバーを表示できます。 既定のログイン マッピングの後にすべてのリンク サーバーとリモート サーバーを表示するには、次のアクセス許可が必要です。

  • ALTER ANY LINKED SERVER または ALTER ANY LOGIN ON SERVER
  • setupadmin または sysadmin 固定サーバー ロールメンバーシップ

参照

カタログ ビュー (Transact-SQL)
リンク サーバーのカタログ ビュー (Transact-SQL)
sp_addlinkedsrvlogin (Transact-SQL)
sp_addremotelogin (Transact-SQL)