sys.servers (Transact-SQL)
Contiene una riga per ogni server collegato o remoto registrato, nonché una riga per il server locale con server_id = 0.
Nome colonna |
Tipo di dati |
Descrizione |
---|---|---|
server_id |
int |
ID locale del server collegato. |
name |
sysname |
Se server_id = 0, indica il nome del server. Se server_id > 0, indica il nome locale del server collegato. |
product |
sysname |
Nome del prodotto del server collegato. "SQL Server" indica che si tratta di un'altra istanza di SQL Server. |
provider |
sysname |
Nome del provider OLE DB per la connessione al server collegato. |
data_source |
nvarchar(4000) |
Proprietà di connessione dell'origine dei dati OLE DB. |
location |
nvarchar(4000) |
Proprietà di connessione della posizione OLE DB. Restituisce NULL se la colonna non include alcun valore. |
provider_string |
nvarchar(4000) |
Proprietà di connessione della stringa del provider OLE DB. È NULL tranne nei casi in cui il chiamante dispone dell'autorizzazione ALTER ANY LINKED SERVER. |
catalog |
sysname |
Proprietà di connessione del catalogo OLE DB. Restituisce NULL se la colonna non include alcun valore. |
connect_timeout |
int |
Timeout della connessione espresso in secondi. Restituisce 0 se non si specifica alcun valore. |
query_timeout |
int |
Timeout della query espresso in secondi. Restituisce 0 se non si specifica alcun valore. |
is_linked |
bit |
0 = Server di tipo obsoleto aggiunto tramite sp_addserver, con funzionalità diverse a livello di chiamate RPC e transazioni distribuite. 1 = Server collegato standard. |
is_remote_login_enabled |
bit |
L'opzione RPC è impostata per consentire gli accessi remoti in entrata per questo server. |
is_rpc_out_enabled |
bit |
Sono abilitate le chiamate RPC in uscita (da questo server). |
is_data_access_enabled |
bit |
Il server è abilitato per le query distribuite. |
is_collation_compatible |
bit |
Le regole di confronto dei dati remoti vengono considerate compatibili con i dati locali se non sono disponibili informazioni sulle regole di confronto. |
uses_remote_collation |
bit |
Il valore 1 indica che vengono utilizzate le regole di confronto segnalate dal server remoto. In caso contrario, vengono utilizzate le regole di confronto specificate dalla colonna successiva. |
collation_name |
sysname |
Nome delle regole di confronto da utilizzare oppure NULL se vengono utilizzate le regole di confronto locali. |
lazy_schema_validation |
bit |
Il valore 1 indica che la convalida dello schema non viene verificata all'avvio della query. |
is_system |
bit |
È possibile accedere a questo server solo dal sistema interno. |
is_publisher |
bit |
Il server è un server di pubblicazione per la replica. |
is_subscriber |
bit |
Il server è un Sottoscrittore per la replica. |
is_distributor |
bit |
Il server è un server di distribuzione per la replica. |
is_nonsql_subscriber |
bit |
Il server è un Sottoscrittore non SQL Server per la replica. |
is_remote_proc_transaction_promotion_enabled |
bit |
Se 1, la chiamata di una stored procedure remota comporta l'avvio di una transazione distribuita e l'integrazione della transazione in MS DTC. Per ulteriori informazioni, vedere sp_serveroption (Transact-SQL). |
modify_date |
datetime |
Data dell'ultima modifica delle informazioni relative al server. |
Autorizzazioni
Il valore di provider_string è sempre NULL tranne nei casi in cui il chiamante dispone dell'autorizzazione ALTER ANY LINKED SERVER.
Non sono richieste autorizzazioni per visualizzare il server locale (server_id = 0).
Quando si crea un server collegato o remoto, in SQL Server viene creato un mapping predefinito degli account di accesso al ruolo del server public. Di conseguenza, per impostazione predefinita tutti gli account di accesso possono visualizzare tutti i server collegati e remoti. Per limitare la visibilità ai server, rimuovere il mapping predefinito degli account di accesso eseguendo sp_droplinkedsrvlogin e specificando NULL per il parametro locallogin.
Se il mapping predefinito degli account di accesso viene eliminato, solo gli utenti aggiunti esplicitamente come account di accesso collegato o remoto possono visualizzare i server collegati o remoti per cui dispongono di un account di accesso. Per visualizzare tutti i server collegati e remoti in seguito all'eliminazione del mapping predefinito degli account di accesso, sono richieste le autorizzazioni seguenti:
ALTER ANY LINKED SERVER o ALTER ANY LOGIN ON SERVER
Appartenenza al ruolo predefinito del server setupadmin o sysadmin