Share via


SharePoint: Deleting Orphan Sites

 

Applies To

  • SharePoint 2010
  • SharePoint 2013
  • SharePoint 2016

 

Scenario

You are trying to clean up the Content Databases and deleting all unused databases which are attached to SharePoint. Usually, you detach the Content DB from SharePoint and then delete it from SQL. But what if you forget to detach it from SharePoint but you removed it from SQL Server? Now you have all those sites showing in the Central admin but no properties for them.

OR

You are trying to create tons of site collections via a batch script and some sites collections failed to provision completely and become orphaned in the SharePoint.

 

Solutions

Solution # 1: Remove-SPSite

  • Try to run the following PowerShell command to remove them.

    Remove-SPSite -Identity "http://Sitecollection"
    
  • But this throws the below error:

    Remove-SPSite : <nativehr>0x80070003</nativehr><nativestack></nativestack>At line:1 char:14

 

Solution # 2: STSADM

  • Try to use Old Fashioned Stsadm command.

    stsadm -o deletesite -force -siteid e2a114b8-80c9-41f6-87bf-3feddf2ad9b6 -databaseserver DS1 -databasename DB1
    
  • Again, luck is not with us and failed with the same error mentioned above.

 

Solution # 3: Repair Content DB

  • Try to repair the Content DB.

    $db = Get-SPContentDatabase -Site ""; 
    $db.Repair($true); $db.Update();
    
  • Even this completed without any issue but bad sites are still showing.

 

Solution # 4: Delete SiteDatabase

  • Try to delete using SPContentaDatbase Force Method.

    $site = Get-SPSite ""; 
    $siteId = $site.Id; 
    $siteDatabase = $site.ContentDatabase; $siteDatabase.ForceDeleteSite($siteId, $false, $false);
    
  • As soon as this script completed successfully, the orphan site is gone from Central Admin.

There is no guarantee that these methods will work in your situation, but all above list options which we are using in our farm for deleting orphaned stuff. In your case maybe #1 or #2 or maybe #4 works. But Solution #4 should work for everyone.