Main /

Sharepoint 2010 Power Shell

Sharepoint 2010 Power Shell

Sharepoint 2010 PowerShell Kommandos

Die Sharepoint-PowerShell console erreicht man über

Start -> SharePoint 2010 Management Shell -> Run as Administrator

Eine nützliche Sammlung von Kommendos.

1. Auflisten von Features

Nach Namen:
Get-SPFeature | Sort -Property DisplayName
Nach Namen und gruppiert nach Scope
Get-SPFeature | Sort -Property Scope,DisplayName | FT -GroupBy Scope DisplayName,Id
Auflisten aller aktivierten features einer Site-Collection

Insbesondere wenn man mit hidden features arbeitet ist es manchmal nötig herauszufinden ob ein feature in einer Site-Collection aktiviert ist. Das folgende Kommando listet alle aktivierten Features einer Site-Collection auf:

Get-SPFeature -Site http://<URL Zur Sitecollection> | Sort DisplayName | FT DisplayName,Id
Einem Account Rechte auf die Content-Datenbank geben

Problem: Die Excel-Services stellen nichts dar, es erfolgt auch keine (offensichtliche) Fehlermeldung. Ein Blick in SharePoint-Logs verrät, dass ein Service-Account nicht genügend Rechte auf der Content-Datenbank hat. Da sieht dann ungefähr so aus:

 SharePointFileLoader.GetSPFile: Sharepoint threw a handled exception - turning it into a FileOpen exception. Exception is: System.Data.SqlClient.SqlException:
 Cannot open database "MSS_T_Content_spt-services" requested by the login. The login failed.  Login failed for user 'domain\username'.     
 bei System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)     
 bei System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)     
 bei System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)     
 bei System.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(Boolean enlistOK)     
 bei System.Data.SqlCl...

Behoben wird es wie folgt: Powershell als Admin aufmachen, dann:

PS> $w = Get-SPWebApplication –Identity < URL der Web application >
PS> $w.GrantAccessToProcessIdentity("< Name des service account >")

Fertig, der Service-Account ist db_owner auf der entsprechenden Content-Datenbank

Frische Änderungen | Menü editieren
zuletzt geändert am 26.03.2013 13:38 Uhr von Elsni
Edit Page | Page History