Provider PowerShell per SQL Server
Il provider SQL Server per Windows PowerShell espone la gerarchia degli oggetti SQL Server in percorsi simili ai percorsi del file system. È possibile usare i percorsi per trovare un oggetto e, successivamente, usare i metodi dei modelli SMO (SQL Server Management Objects) per eseguire azioni sugli oggetti.
Vantaggi del provider PowerShell per SQL Server
Attraverso i percorsi implementati dal provider di SQL Server è possibile verificare facilmente e in modo interattivo tutti gli oggetti in un'istanza di SQL Server. È possibile spostarsi tra i percorsi utilizzando alias di Windows PowerShell simili ai comandi normalmente utilizzati per spostarsi tra i percorsi del file system.
Gerarchia di SQL Server PowerShell
Nei prodotti in cui i dati o i modelli a oggetti possono essere rappresentati in una gerarchia, per esporre le gerarchie vengono utilizzati i provider Windows PowerShell. La gerarchia viene esposta utilizzando una struttura di unità e percorsi simile a quelle utilizzate dal file system di Windows.
Ciascun provider Windows PowerShell implementa una o più unità. Ciascuna unità è il nodo radice di una gerarchia di oggetti correlati. Il provider SQL Server implementa un'unità SQLSERVER:. Nel provider viene inoltre definito un set di cartelle primarie per l'unità SQLSERVER:. Ogni cartella e le relative sottocartelle rappresentano il set di oggetti a cui è possibile accedere usando un modello SMO (SQL Server Management Objects). Quando si seleziona una sottocartella in un percorso che inizia con una di queste cartelle principali, è possibile utilizzare i metodi del modello a oggetti associato per eseguire azioni sull'oggetto rappresentato dal nodo. Le cartelle Windows PowerShell implementate dal provider SQL Server 2014 sono elencate nella tabella seguente.
Cartella | Spazio dei nomi del modello a oggetti di SQL Server | Oggetti |
---|---|---|
SQLSERVER:\SQL | Microsoft.SqlServer.Management.Smo Microsoft.SqlServer.Management.Smo.Agent Microsoft.SqlServer.Management.Smo.Broker Microsoft.SqlServer.Management.Smo.Mail |
Oggetti di database, come tabelle, viste e stored procedure. |
SQLSERVER:\SQLPolicy | Microsoft.SqlServer.Management.Dmf Microsoft.SqlServer.Management.Facets |
Oggetti di gestione basata sui criteri, come criteri e facet. |
SQLSERVER:\SQLRegistration | Microsoft.SqlServer.Management.RegisteredServers Microsoft.SqlServer.Management.Smo.RegSvrEnum |
Oggetti server registrati, come gruppi di server e server registrati. |
SQLSERVER:\Utility | Microsoft.SqlServer.Management.Utility | Oggetti utilità, ad esempio le istanze gestite del motore di database. |
SQLSERVER:\DAC | Microsoft.SqlServer.Management.DAC | Oggetti applicazione del livello dati, ad esempio pacchetti DAC e operazioni quali l'implementazione di DAC. |
SQLSERVER:\DataCollection | Microsoft.SqlServer.Management.Collector | Oggetti dell'agente di raccolta dati, ad esempio set di raccolta e archivi di configurazione. |
SQLSERVER:\IntegrationServices | Microsoft.SqlServer.Management.IntegrationServices | Integration Services oggetti come progetti, pacchetti e ambienti. |
SQLSERVER:\SQLAS | Microsoft.AnalysisServices | Oggetti di Analysis Services come cubi, aggregazioni e dimensioni. |
È ad esempio possibile utilizzare la cartella SQLSERVER:\SQL per iniziare percorsi che possono rappresentare qualsiasi oggetto supportato dal modello a oggetti SMO. La parte iniziale di un percorso SQLSERVER:\SQL è SQLSERVER:\SQL\NomeComputer\NomeIstanza. I nodi che seguono il nome dell'istanza possono essere raccolte di oggetti, come Database o Viste, e nomi di oggetti, ad esempio AdventureWorks2012. Gli schemi non sono rappresentati come classi di oggetti. Quando si specifica il nodo per un oggetto di livello principale in uno schema, ad esempio una tabella o una vista, è necessario specificare il nome dell'oggetto nel formato NomeSchema.NomeOggetto.
Si tratta del percorso della tabella Vendor nello schema Di acquisto del database AdventureWorks2012 in un'istanza predefinita del motore di database nel computer locale:
SQLSERVER:\SQL\localhost\DEFAULT\Databases\AdventureWorks2012\Tables\Purchasing.Vendor
Per altre informazioni sulla gerarchia del modello a oggetti SMO, vedere Diagramma del modello a oggetti SMO.
I nodi delle raccolte in un percorso sono associati a una classe di raccolte nel modello a oggetti associato. I nodi dei nomi di oggetti sono associati a una classe di oggetti nel modello a oggetti associato, come indicato nella tabella seguente.
Path | Classe SMO |
---|---|
SQLSERVER:\SQL\MyComputer\DEFAULT\Databases | DatabaseCollection |
SQLSERVER:\SQL\MyComputer\DEFAULT\Databases\AdventureWorks2012 | Database |
Attività del provider di SQL Server
Descrizione dell'attività | Argomento |
---|---|
Viene descritto come utilizzare i cmdlet di Windows PowerShell per spostarsi tra i nodi all'interno di un percorso e, a ogni nodo, ottenere un elenco degli oggetti in corrispondenza di quel nodo. | Spostarsi all'interno dei percorsi di SQL Server PowerShell |
Viene descritto come utilizzare i metodi e le proprietà SMO per eseguire report e attività sull'oggetto rappresentato da un nodo in un percorso. Viene inoltre descritto come ottenere un elenco dei metodi e delle proprietà SMO per quel nodo. | Usare i percorsi di SQL Server PowerShell |
Viene descritto come convertire un Uniform Resource Name SMO (URN) in un percorso del provider SQL Server. | Convertire URN in percorsi di provider di SQL Server |
Viene descritto come stabilire connessioni con autenticazione di SQL Server tramite il provider di SQL Server. Per impostazione predefinita, il provider utilizza connessioni di autenticazione di Windows stabilite mediante le credenziali dell'account di Windows che esegue il processo di Windows PowerShell. | Gestire l'autenticazione nel motore di database PowerShell |