2016-04-07 12 views
1

üzerinde başarısız ama çalıştırmak için başarısız olur ve aşağıdaki hata üretir: başarıyla benim senaryoyu yürütmek mümkün duyuyorumınvoke SQLCMD SQL Kümesi Bir SQL Server kümede çağırmak-sqlcmd kullanmaya çalışıyorum

invoke-sqlcmd : A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server) At C:\rs-pkgs\SitecoreDeployScripts\SitecoreDatabasesDeploy.ps1:128 char:1 + invoke-sqlcmd -InputFile $inputFilePath + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidOperation: (:) [Invoke-Sqlcmd], SqlException + FullyQualifiedErrorId : SqlExectionError,Microsoft.SqlServer.Management.PowerShell.GetScriptCommand

Kümelenmemiş bir geliştirme SQL Box üzerinde.

$scriptPath = "C:\" 
$scriptName = "MyScript.sql" 
$inputFilePath = "{0}\{1}" -f $scriptPath,$scriptName 
invoke-sqlcmd -InputFile $inputFilePath 

Yani soru bu izin verilmesi değil bir küme sorunu veya uzak bağlantıları olan bir güvenlik sorunu olduğunu: Burada SQL çağırma örneğidir? SQL Komut Dosyalarını PowerShell'den nasıl çalıştırabilirim (SSMS'de açıp çalıştırmaya devam edersem doğru çalıştır).

select @@servername 

Bir çalışır:

$scriptPath = "C:\" 
$scriptName = "MyScript.sql" 
$inputFilePath = "{0}\{1}" -f $scriptPath,$scriptName 
invoke-sqlcmd -InputFile $inputFilePath -ServerInstance 'MyClusterName" 

aşağıdaki sorguyu çalıştırarak adını bulunduğu şu şekildedir: o senaryoyu bitirmek yılında

+0

SQL sunucusuna nasıl bağ kuracağınızı göremiyoruz. SQLPS modülü bir PSProvider kullanır ve hedefinizi "Invoke-SqlCmd" de açıkça sağladığınızdan, CWD'yi kullanır. – briantist

+0

Komut dosyasında daha önce kullanıyorum: Import-Module sqlps Bağlanmak için daha iyi bir yöntem var mı/doğru hedef nedir? Sqlps'in çalışacağı gibi çalışacağını düşündüm, bu benim SQL kutumda zaten var olan Windows kimlik doğrulamasını geçiyor – Kode

+0

'invoke-sqlcmd' çalıştırıldığında' $ pwd' değerinin ne olduğunu bize anlatın. Eğer (ve sizin örneklemde belirttiğiniz) belirtmezseniz, SQL sunucusuna bağlantı olarak kullanılan şey budur. Aksi halde, bu kod bloğunun SQL sunucunuzun nerede olduğunu bilmesini bekliyorsunuz? – briantist

cevap

0

sadece -ServerInstance Sunucu örnek adı anahtarını gerekli -ServerInstance anahtarı olmayan tek bir kutu yerelleştirilmiş olduğundan/tek