Change SharePoint Site Collection Quota using PowerShell
In some
cases, I have seen site collection quotas are turned to "Individual Quota" in the database attachment method, even I copied the quota templates before database attachment. All quota settings are lost! I dunno the cause of this issue and want to apply site collection quota to existing sites.
To apply quota for SharePoint site collection using PowerShell, the syntax goes like:
Set-SPSite -Identity "Site-collection-URL" -QuotaTemplate "Quota-Template-Name"
E.g.
Change quota for SharePoint Site Collections programmatically:
To set site collection quota for SharePoint sites programmatically using PowerShell, The code goes like:
Set Individual Quotas using PowerShell:
Bulk update SharePoint Site collection quotas:
In another case, Got a requirement to change quota template for all site collections under a specific managed path (say: Departments)
SharePoint 2007 - Set quotas in Bulk with STSADM:
We can set site collection quota in bulk using stsadm -o updatequota command line.
E.g. stsadm -o updatequota –quotaname "Name of the Quota defined in Central Admin"
It's also possible to limit the quota changes within a content database.
To apply quota for SharePoint site collection using PowerShell, the syntax goes like:
Set-SPSite -Identity "Site-collection-URL" -QuotaTemplate "Quota-Template-Name"
E.g.
Set-SPSite -Identity "http://sharePoint.company.com/sites/sales" -QuotaTemplate "Gold - 1 GB"Where "Gold - 1 GB" is our existing quota defined! We can apply quotas in bulk with PowerShell now!
Change quota for SharePoint Site Collections programmatically:
To set site collection quota for SharePoint sites programmatically using PowerShell, The code goes like:
[void][System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint") [Void]System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint.Administration") function global:Get-SPSite($url) { return new-Object Microsoft.SharePoint.SPSite($url) } $contentService =[Microsoft.SharePoint.Administration.SPWebService]::ContentService $QuotaTemplate = $contentService.QuotaTemplates["Gold - 1 GB"] $site = Get-SPSite "http://sharepoint.company.com/" $site.quota=$QuotaTemplate
Set Individual Quotas using PowerShell:
#Set the site URL variable accordingly! $SiteURL = "http://sales.crescent.com" Set-SPSite -Identity $SiteURL -MaxSize 1GB -WarningSize 900MB
Bulk update SharePoint Site collection quotas:
In another case, Got a requirement to change quota template for all site collections under a specific managed path (say: Departments)
$WebAppURL = "http://sharepoint.crescent.com" $TemplateName ="Gold - 1 GB" $contentService = [Microsoft.SharePoint.Administration.SPWebService]::ContentService $quotaTemplate = $contentService.QuotaTemplates[$TemplateName] Get-SPWebApplication $WebAppURL | Get-spsite -limit all | Where-Object {$_.ServerRelativeUrl.StartsWith("/departments/")} | ForEach-Object { $_.Quota = $quotaTemplate }To Remove a Quota Assigned (either via Quota Template or Individual Quota) to a Site collection, Use:
$Site = Get-SPSite -Identity "http://your-site-collection.com/" $Site.Quota = $null
SharePoint 2007 - Set quotas in Bulk with STSADM:
We can set site collection quota in bulk using stsadm -o updatequota command line.
E.g. stsadm -o updatequota –quotaname "Name of the Quota defined in Central Admin"
It's also possible to limit the quota changes within a content database.
thanks! it worked.
ReplyDelete