Aracılığıyla paylaş


SQL Server PowerShell çalıştırma

SQL Server 2008 Windows PowerShell ve bir kümesini yükler. SQL Server Ek gerçekleştiren bileşenler SQL Server Windows PowerShell işlevselliğindeki. Sonra çalışma Windows PowerShell Komut dosyası kodu SQL Server nesneler. Komut dosyalarını Windows PowerShell ortamında çalıştırılabilir SQL Server Management Studiove olarak SQL Server Aracı işler.

SQL Server desteği yükleme

Windows PowerShell Komut dosyası kullanarak çalıştırmak için gerekli yazılım yükleme SQL Server Kur. SQL Server 2008 Kur, istemci yazılımını veya veritabanı Hizmetleri düğümlerin seçtiğinizde aşağıdaki Windows PowerShell bileşenleri yükler:

  • Windows PowerShell Windows PowerShell zaten bilgisayarınızda yoksa, 1.0.

  • The SQL Server snap-ins.Ek bileşenleri için destek Windows PowerShell iki tür uygulayan dll dosyaları olan SQL Server:

    • Bir dizi SQL Server davranırlar. Davranırlar belirli bir eylem gerçekleştiren komutlardır.Örneğin, Çağır sqlCmd runs a Transact-SQL ya da kullanarak çalıştırılıp XQuery komut dosyası sqlCmd yardımcı programını ve Çağır PolicyEvaluation raporlarını olup olmadığını SQL Server nesneleri ilke temelli yönetim ilkeleri ile uyumlu.

    • C SQL Server Sağlayıcı. Sağlayıcı hiyerarşisini gezinmenize olanak sağlar SQL Server bir dosya sistemi yoluna benzer bir yol kullanarak nesneler. Her nesnenin bir sınıftan ilişkili olduğu SQL Server Yönetim nesnesi modeller. Yöntem ve özelliklerini sınıfı, iş nesneleri üzerinde gerçekleştirmek için kullanabilirsiniz.Örneğin, cd için bir veritabanı nesnesinde bir yol, yöntemlerini ve özelliklerini Microsoft.SqlServer.Managment.SMO.Database sınıfının veritabanını yönetmek için kullanabileceğiniz.

  • The sqlps utility that is used to run Windows PowerShell sessions that include the SQL Server snap-ins.

The SQL Server 2008 sürüm of SQL Server Management Studio supports starting Windows PowerShell sessions from the Object Explorer tree. The SQL Server 2008 sürüm of SQL Server Agent supports Windows PowerShell iş steps.

Kur tamamlandıktan sonra Windows PowerShell kaldırılırsa SQL Server Windows PowerShell özellikleri çalışmaz. Windows kullanıcıların Windows PowerShell kaldırılması ve Windows PowerShell kaldırma bazı Windows işletim sistemi yükseltmeleri tarafından gerekli olabilir.Windows PowerShell kaldırıldı ve kullanmak istediğiniz SQL Server Windows PowerShell özellikleri, aşağıdakilerden birini yapmalısınız:

  • El ile karşıdan yükleyip Windows PowerShell 1. 0'dan yeniden Microsoft Yükleme Merkezi. Download instructions are on the Windows Server 2003Web site.

  • Çalıştırıyorsanız Windows Server 2008PowerShell 1.0 Windows işletim sisteminde bulunmaktadır, ancak varsayılan olarak devre dışıdır. Windows PowerShell'ndan etkinleştirebilirsiniz Windows Server 2008.

SQL Server'ın desteklenen sürümleri

Kullanmanız gereken SQL Server 2008 istemci bileşenleri çalıştırmak için SQL Server Windows PowerShell özellikleri. The SQL Server sağlayıcı for Windows PowerShell can connect to instances of SQL Server 2008, SQL Server 2005, or SQL Server 2000. En eski sürüm SQL Server 2005 kullanabileceğiniz SP2 bulunmaktadır. En eski sürüm SQL Server 2000 SP4 sağlamasıdır. Zaman SQL Server Sağlayıcı bağlanır SQL Server 2005 ve SQL Server 2000, bu sürümde de kullanılabilmesini işlevine sınırlıdır SQL Server.

Sqlps yardımcı programı'nı kullanma

sqlps bir yardımcı program Windows PowerShell bir ortam oluşturur ve daha sonra yükler ve kaydeder iseSQL Server ek bileşenler. Kullanabileceğiniz sqlps to:

  • Etkileşimli Windows PowerShell komutlarını çalıştırın.

  • Windows PowerShell Komut dosyalarını çalıştırın.

  • Çalışma SQL Server davranırlar.

  • Use SQL Server Sağlayıcı yolları hiyerarşisi aracılığıyla gitmek için SQL Server nesneler.

Varsayılan olarak, sqlps için küme komut dosyası kullanan kullanan kullanan dosyası kullanan yürütme ilkesi çalışırSınırlıherhangi bir Windows PowerShell komut dosyası kullanan kullanan dosyaları çalıştırılıyor engelleyen. Kullanabileceğiniz küme ExecutionPolicy cmdlet'i imzalı komut dosyaları veya tüm komut dosyalarını etkinleştirmek için.Yalnızca güvenilir kaynaklardan gelen komut dosyası çalıştırma ve tüm giriş güvenli ve uygun NTFS izinlerini kullanarak dosyaları çıktı.Windows PowerShell Komut dosyalarını etkinleştirme hakkında daha fazla bilgi için bkz: Windows çalıştıran.

Daha fazla bilgi için bkz: sqlps yardımcı programı.

SQL Server Management Studio'da Windows PowerShell kullanma

You can start Windows PowerShell sessions in SQL Server Management Studio by right-clicking objects in Object Explorer and selecting Start PowerShell.SQL Server Management Studio then starts a Windows PowerShell session in which the SQL Server snap-ins have been loaded and registered.Nesne Gezgini'nde sağ tıklattığınız nesne konumunu, yol oturum için hazır.Örneğin, sağ AdventureWorks Object Explorer nesnesinde veritabanı ve seçin PowerShell başlatın., aşağıdaki Windows PowerShell yol küme:

SQLSERVER:\SQL\MyComputer\MyInstance\Databases\AdventureWorks>

SQL Server Agent iş adımlar Windows PowerShell kullanma

Çeşitli türleri vardır. SQL Server Aracı iş adımları. Her bir çoğaltma aracısının gibi belirli ortam için ya da komut istemi istemini ortam uygulayan bir alt sistem ile ilişkilidir.The SQL Server Agent Windows PowerShell subsystem supports iş steps that yürütmek Windows PowerShell scripts. Windows PowerShell Komut dosyası kodu ve daha sonra kullanabilirsiniz. SQL Server Zamanlanmış bir kez çalışacak işler veya yanıt kodları eklemek için aracı SQL Server olaylar. The SQL Server Agent Windows PowerShell subsystem loads and registers the SQL Server snap-ins so that you can run Windows PowerShell scripts.

Daha fazla bilgi için bkz: SQL Server Agent alt sistemler.

Uyarı

Her bir SQL Server Agent Windows PowerShell iş adım başlatır bir sqlps işlem yaklaşık 20 MB bellek tüketir.Çok sayıda eşzamanlı Windows PowerShell iş adımları'nı çalıştıran performansı olumsuz etkileyebilir.

Windows PowerShell için SQL Server ek bileşenler ekleme

The sqlps utility is a Windows PowerShell mini-shell.Mini kabuklar bazı sınırlamalar vardır.Örneğin, bir veya daha fazla Windows PowerShell ek bileşenleri yüklemek için kodlanmış, ancak kullanıcılar ve komut dosyaları, diğer ek bileşenleri eklenemiyor.Bir mini-shell (hem SQL Server ek bileşenler ve ek bileşenler, başka bir ürün gibi desteklenmeyen bir işlev gerektiriyorsa, doğrudan Windows PowerShell ortamına SQL Server ek bileşenleri ekleyebilirsiniz.

Aşağıdaki kodu Not Defteri'ne yapıştırın ve ps1 C:\MyFolder\InitializeSQLProvider.ps1 gibi bilgisayarınızdaki komut dosyası olarak kaydedin:

# Add the SQL Server provider.

$ErrorActionPreference = "Stop"

$sqlpsreg="HKLM:\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.SqlServer.Management.PowerShell.sqlps"

if (Get-ChildItem $sqlpsreg -ErrorAction "SilentlyContinue")
{
    throw "SQL Server Provider is not installed."
}
else
{
    $item = Get-ItemProperty $sqlpsreg
    $sqlpsPath = [System.IO.Path]::GetDirectoryName($item.Path)
}


# Set mandatory variables for the SQL Server rovider
Set-Variable -scope Global -name SqlServerMaximumChildItems -Value 0
Set-Variable -scope Global -name SqlServerConnectionTimeout -Value 30
Set-Variable -scope Global -name SqlServerIncludeSystemObjects -Value $false
Set-Variable -scope Global -name SqlServerMaximumTabCompletion -Value 1000

# Load the snapins, type data, format data
Push-Location
cd $sqlpsPath
Add-PSSnapin SqlServerCmdletSnapin100
Add-PSSnapin SqlServerProviderSnapin100
Update-TypeData -PrependPath SQLProvider.Types.ps1xml 
update-FormatData -prependpath SQLProvider.Format.ps1xml 
Pop-Location

Sonra komut dosyasını, Windows PowerShell Ortamı'nı başlatmak için kullanabileceğiniz SQL Server Bu komutu kullanarak ek bileşenler yüklenir:

PowerShell -NoExit -Command "C:\MyFolder\InitializeSQLProvider.ps1"

Komutu bir komut istemi isteminde veya bir masaüstü kısayolu'den çalıştırmak Çalışma iletişim kutusuBaşlangıç menüsü.Varsayılan olarak, Windows PowerShell çalışır Sınırlı modunda çalışan komut dosyalarını desteklemiyor.Windows PowerShell Komut dosyalarını etkinleştirme hakkında daha fazla bilgi için bkz: Windows çalıştıran.

SQL Server yönetim nesneleri Windows PowerShell yükleniyor

SQL Server sağlayıcı, SQL Server Management nesnesi (SMO) derlemelere otomatik olarak yükler.SMO derlemeleri doğrudan yüklemek gerekebilir iki durum vardır:

  • Komut dosyanızın ilk komutunun öncesine bir SMO nesnesi başvuruyorsa, sağlayıcı veya davranırlar SQL Server ek bileşenlerden başvuruyor.

  • Bağlantı noktası SMO kod için başka bir dilde (örneğin, C# veya sağlayıcı veya davranırlar kullanan VB.Net istediğiniz.

Aşağıdaki kod SMO derlemeleri yükler:

# Loads the SQL Server Management Objects (SMO)

$ErrorActionPreference = "Stop"

$sqlpsreg="HKLM:\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.SqlServer.Management.PowerShell.sqlps"

if (Get-ChildItem $sqlpsreg -ErrorAction "SilentlyContinue")
{
    throw "SQL Server Provider is not installed."
}
else
{
    $item = Get-ItemProperty $sqlpsreg
    $sqlpsPath = [System.IO.Path]::GetDirectoryName($item.Path)
}


$assemblylist = 
"Microsoft.SqlServer.Smo",
"Microsoft.SqlServer.Dmf ",
"Microsoft.SqlServer.SqlWmiManagement ",
"Microsoft.SqlServer.ConnectionInfo ",
"Microsoft.SqlServer.SmoExtended ",
"Microsoft.SqlServer.Management.RegisteredServers ",
"Microsoft.SqlServer.Management.Sdk.Sfc ",
"Microsoft.SqlServer.SqlEnum ",
"Microsoft.SqlServer.RegSvrEnum ",
"Microsoft.SqlServer.WmiEnum ",
"Microsoft.SqlServer.ServiceBrokerEnum ",
"Microsoft.SqlServer.ConnectionInfoExtended ",
"Microsoft.SqlServer.Management.Collector ",
"Microsoft.SqlServer.Management.CollectorEnum"


foreach ($asm in $assemblylist)
{
    $asm = [Reflection.Assembly]::LoadWithPartialName($asm)
}

Push-Location
cd $sqlpsPath
update-FormatData -prependpath SQLProvider.Format.ps1xml 
Pop-Location

Değişiklik Geçmişi

Güncelleştirilmiş içerik

Windows PowerShell ortamı kullanarak bölümü silindi.Iki yeni bir bölüm eklendi: Windows Powershell için SQL Server ek bileşenler ekleme ve SQL Server yönetim nesneleri Windows PowerShell yükleniyor.