Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Configurare un server collegato per consentire al motore di database di SQL Server di eseguire comandi su origini dati OLE DB all'esterno dell'istanza di SQL Server. I server collegati sono in genere configurati per consentire al motore di database di eseguire un'istruzione Transact-SQL che include tabelle in un'altra istanza di SQL Server o un altro prodotto di database, ad esempio Oracle. Molti tipi di origini dati OLE DB possono essere configurati come server collegati, tra cui Microsoft Access ed Excel. I server collegati offrono i vantaggi seguenti:
Possibilità di accedere ai dati dall'esterno di SQL Server.
Possibilità di eseguire query distribuite, aggiornamenti, comandi e transazioni su origini dati eterogenee in tutta l'organizzazione.
Possibilità di gestire origini dati diverse in modo analogo.
È possibile configurare un server collegato usando SQL Server Management Studio o l'istruzione sp_addlinkedserver (Transact-SQL). I provider OLE DB variano notevolmente nel tipo e nel numero di parametri necessari. Ad esempio, alcuni provider richiedono di fornire un contesto di sicurezza per la connessione usando sp_addlinkedsrvlogin (Transact-SQL). Alcuni provider OLE DB consentono a SQL Server di aggiornare i dati nell'origine OLE DB. Altri forniscono solo l'accesso ai dati di sola lettura. Per informazioni su ogni provider OLE DB, vedere la documentazione relativa al provider OLE DB.
Componenti del server collegati
Una definizione del server collegato specifica gli oggetti seguenti:
Provider OLE DB
Un'origine dati OLE DB
Un provider OLE DB è una DLL che gestisce e interagisce con un'origine dati specifica. Un'origine dati OLE DB identifica il database specifico a cui è possibile accedere tramite OLE DB. Anche se le origini dati sottoposte a query tramite definizioni di server collegati sono in genere database, i provider OLE DB esistono per un'ampia gamma di file e formati di file. Questi includono file di testo, dati del foglio di calcolo e i risultati delle ricerche di contenuto full-text.
Il provider OLE DB di Microsoft SQL Server Native Client (PROGID: SQLNCLI11) è il provider OLE DB ufficiale per SQL Server.
Annotazioni
Le query distribuite di SQL Server sono progettate per funzionare con qualsiasi provider OLE DB che implementa le interfacce OLE DB necessarie. Tuttavia, SQL Server è stato testato solo con il provider OLE DB di SQL Server Native Client e alcuni altri provider.
Dettagli del server collegato
La figura seguente illustra le nozioni di base di una configurazione del server collegato.
Livello
In genere, i server collegati vengono usati per gestire le query distribuite. Quando un'applicazione client esegue una query distribuita tramite un server collegato, SQL Server analizza il comando e invia richieste a OLE DB. La richiesta del set di righe può essere sotto forma di esecuzione di una query sul provider o di apertura di una tabella di base dal provider.
Affinché un'origine dati restituisca dati tramite un server collegato, il provider OLE DB (DLL) per tale origine dati deve essere presente nello stesso server dell'istanza di SQL Server.
Quando viene usato un provider OLE DB di terze parti, l'account in cui viene eseguito il servizio SQL Server deve disporre delle autorizzazioni di lettura ed esecuzione per la directory e tutte le sottodirectory in cui è installato il provider.
Gestione dei provider
È disponibile un set di opzioni che controllano il modo in cui SQL Server carica e usa i provider OLE DB specificati nel Registro di sistema.
Gestione delle definizioni del server collegato
Quando si configura un server collegato, registrare le informazioni di connessione e le informazioni sull'origine dati con SQL Server. Dopo la registrazione, è possibile fare riferimento a tale origine dati con un singolo nome logico.
È possibile usare stored procedure e viste del catalogo per gestire le definizioni del server collegato:
Creare una definizione del server collegato eseguendo sp_addlinkedserver.
Visualizzare informazioni sui server collegati definiti in un'istanza specifica di SQL Server eseguendo una query sulle viste del catalogo di sistema sys.servers .
Eliminare una definizione del server collegato eseguendo sp_dropserver. È anche possibile utilizzare questa stored procedure per rimuovere un server remoto.
È anche possibile definire server collegati usando SQL Server Management Studio. In Esplora oggetti fare clic con il pulsante destro del mouse su Oggetti server, scegliere Nuovo e selezionare Server collegato. È possibile eliminare una definizione del server collegato facendo clic con il pulsante destro del mouse sul nome del server collegato e scegliendo Elimina.
Quando si esegue una query distribuita su un server collegato, includere un nome di tabella completo e in quattro parti per ogni origine dati su cui eseguire query. Questo nome in quattro parti deve essere nel formato linked_server_name.catalog.schema.object_name.
Annotazioni
I server collegati possono essere definiti per puntare indietro (loopback) al server in cui sono definiti. I server di loopback sono più utili quando si testa un'applicazione che usa query distribuite in una rete a server singolo. I server collegati loopback sono destinati ai test e non sono adatti a molte operazioni, come le transazioni distribuite.
Attività correlate
Creare server collegati (motore di database di SQL Server)
sp_addlinkedserver (Transact-SQL)
sp_addlinkedsrvlogin (Transact-SQL)