sys.servers (Transact-SQL)

適用対象: SQL Server Azure SQL Managed Instance

リンク サーバーまたはリモート サーバーごとに 1 行が登録され、 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 以降のバージョン) の場合

SQL Server Native Client (SQLNCLI または SQLNCLI11) とレガシ Microsoft OLE DB Provider for SQL Server (SQLOLEDB) は、新しいアプリケーション開発には推奨されません。

新しいプロジェクトの場合は、次のいずれかのドライバーを使用します。

SQL Server データベース エンジン (バージョン 2012 から 2019) のコンポーネントとして付属する SQLNCLI については、この「サポート ライフサイクルの例外」を参照してください。

アクセス許可

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

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

リンク サーバーまたはリモート サーバーを作成すると、SQL Server によって、 public サーバー ロールへの既定のログイン マッピングが作成されます。 既定のログイン マッピングは、すべてのログインですべてのリンクサーバーとリモート サーバーを表示できることを意味します。 これらのサーバーの可視性を制限するには、 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)