Morgenstern72 0 Geschrieben 10. Juli 2013 Melden Teilen Geschrieben 10. Juli 2013 Server: Windows 2008 R2 SQL: 2000 Express Das Script macht folgendes: Ordnergrößen eines Netzwerkshares auslesen und in eine SQL 2008 Express DB schreiben. Der User des Scheduled Tasks ist Domain Admin sowie Sysadmin auf dem SQL Server. Ich habe mich auch bereits als der User selbst angemeldet und das Script ausgeführt, funkt. $searchFolder = "\\server\c$\share" $SQLServer = "servername\instancename" $SQLDBName = "db" # Start of Script clear get-module -listAvailable | import-module $date = Get-Date -format "yyyy-MM-dd" $SqlConnection = New-Object System.Data.SqlClient.SqlConnection $SqlConnection.ConnectionString = "Server = $SQLServer; Database = $SQLDBName; Integrated Security = True" $sqlConnection.Open() $SqlCmd = New-Object System.Data.SqlClient.SqlCommand $SqlCmd.Connection = $SqlConnection dir $searchFolder | Where-Object { $_.PSIsContainer } | ForEach-Object { $colItems = (Get-ChildItem $_.FullName -recurse -erroraction silentlycontinue | Measure-Object -property length -sum) [int]$length=$colItems.sum/1GB write-host "$_ = $length GB" $sqlQuery = "INSERT INTO sizeofj (date,GB,folder) VALUES ( '$date' , '$length', '$_')" $SqlCmd.CommandText = $SqlQuery $SqlCmd.executenonquery() } $SqlConnection.Close() Lokal läuft das Script brav, per Schedule steht es einfach bei 0x41301 (Running) und die Datenbank bekommt keine Einträge. Task Scheduler: Highest Privileges, run wether user is logged on, 2008 R2Argument: -NoLogo -command "&{\\server\c$\scripts\tasks\sql_count_folders_groupdata.ps1}" oder & '\\server\c$\scripts\tasks\sql_count_folders_groupdata.ps1' Hat jemand eine Idee, warum das Script nichts macht? Zitieren Link zu diesem Kommentar
magman 10 Geschrieben 12. Juli 2013 Melden Teilen Geschrieben 12. Juli 2013 Hallo Morgenstern ich starten meine Scripte unter w2008r2 per Task immer wie folgt. Unter Actions Action = Start a Program Details = c:\windows\system32\windowspowershell\v1.0\powershell.exe -file c:\temp\script.ps1 Zitieren Link zu diesem Kommentar
Dukel 454 Geschrieben 12. Juli 2013 Melden Teilen Geschrieben 12. Juli 2013 Was sagt get-executionpolicy ? Zitieren Link zu diesem Kommentar
Morgenstern72 0 Geschrieben 12. Juli 2013 Autor Melden Teilen Geschrieben 12. Juli 2013 Was sagt get-executionpolicy ? Hab ich bereits auf unrestricted Es wird nun immer kryptischer. Vorgestern Nacht lief das Script plötzlich fehlerfrei, 12 Minuten Dauer. Heute Nacht wurde es nach 1 Stunde Laufzeit abgebrochen, nachdem es 18 von 28 Folders ausgelesen hatte. Es läuft nun also, ohne dass ich was geändert hätte, braucht aber offensichtlich manchmal erheblich länger. Da muss ich nachforschen- Zitieren Link zu diesem Kommentar
Dukel 454 Geschrieben 12. Juli 2013 Melden Teilen Geschrieben 12. Juli 2013 (bearbeitet) Evtl. dauert das auslesen der Daten zu lang. Ich würde mir mal zwischen den Schritten Ausgaben einbauen, dann siehst du wo er hängt und wie lang für was benötigt wird. EDIT: Wieso führst du das Script nicht auf dem Fileserver aus und fragst Lokal die Größen ab? bearbeitet 12. Juli 2013 von Dukel Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.