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)