2010-06-03 52 views
1

如何計算SharePoint應用程序的當前大小?更好的是,一個網站集或一個子網站的大小。SharePoint Web應用程序的大小

我打算將網站集從一個農場移到另一個農場。我需要先計劃存儲容量。

+0

礦山約12「8」:)你可以澄清你的問題呢? – Ryan 2010-06-03 11:02:17

+0

我在問到目前爲止已經佔用的存儲空間。也許是由於文件上傳,列表項添加,等等... – Indra 2010-06-03 11:12:44

回答

0

SharePoint的所有內容都存儲在內容數據庫中(除非您使用某種第三方external BLOB provider)。

網站集(也稱爲頂級網站)存儲在單個內容數據庫中,但每個內容數據庫可以具有多個網站集。

這些會給出稍微不同的結果 - 例如,一個是查看存儲文檔的大小,另一個是存儲這些文檔的內容數據庫的大小。這些內容都不包括C:\ Inetpub \ wwwroot \ wss \ VirtualDirectories \ 80或C:\ Program Files \ Common Files \ Microsoft Shared \ web server extensions \ 12中的文件,但與尺寸相比,這些文件幾乎總是微不足道的存儲在SharePoint中的文檔。

0

你可以看到大小(以字節爲單位)打開SharePoint 2010的命令行管理程序(以管理員身份運行),然後執行:

> Start-SPAssignment -Global 
> (Get-SPSiteAdministration -Identity http://YourSharePointURL/urlToYourSite/).DiskUsed 

此外,你想知道每個子網站的大小。要做到這一點,在將SharePoint管理程序中運行以下腳本:

function GetWebSizes ($StartWeb) 
{ 
    $web = Get-SPWeb $StartWeb 
    [long]$total = 0 
    $total += GetWebSize -Web $web 
    $total += GetSubWebSizes -Web $web 
    $totalInMb = ($total/1024)/1024 
    $totalInMb = "{0:N2}" -f $totalInMb 
    $totalInGb = (($total/1024)/1024)/1024 
    $totalInGb = "{0:N2}" -f $totalInGb 
    write-host "Total size of all sites below" $StartWeb "is" $total "Bytes," 
    write-host "which is" $totalInMb "MB or" $totalInGb "GB" 
    $web.Dispose() 
} 

function GetWebSize ($Web) 
{ 
    [long]$subtotal = 0 
    foreach ($folder in $Web.Folders) 
    { 
     $subtotal += GetFolderSize -Folder $folder 
    } 
    write-host "Site" $Web.Title "is" $subtotal "KB" 
    return $subtotal 
} 

function GetSubWebSizes ($Web) 
{ 
    [long]$subtotal = 0 
    foreach ($subweb in $Web.GetSubwebsForCurrentUser()) 
    { 
     [long]$webtotal = 0 
     foreach ($folder in $subweb.Folders) 
     { 
      $webtotal += GetFolderSize -Folder $folder 
     } 
     write-host "Site" $subweb.Title "is" $webtotal "Bytes" 
     $subtotal += $webtotal 
     $subtotal += GetSubWebSizes -Web $subweb 
    } 
    return $subtotal 
} 

function GetFolderSize ($Folder) 
{ 
    [long]$folderSize = 0 
    foreach ($file in $Folder.Files) 
    { 
     $folderSize += $file.Length; 
    } 
    foreach ($fd in $Folder.SubFolders) 
    { 
     $folderSize += GetFolderSize -Folder $fd 
    } 
    return $folderSize 
} 

然後:

GetWebSizes -StartWeb <startURL> 

我希望這將幫助你... :)

來源:http://get-spscripts.com/2010/08/check-size-of-sharepoint-2010-sites.html

相關問題