As part of my 2007 to 2013 migration project, I had to move my sites to separate content database (Within MOSS) and a web application. There are other blogs written about moving my site using STSADM mergecontentdb and all, it works absolutely fine but in some environments if there are any custom entries on web.config on your actual portal, where you are moving your my sites from, it could cause some weird .net errors.
Let’s start with the steps on moving my sites and then fixing the error, it’s just simple solution, but you will end up spending hours, hope this will help.
Note: Minimum of Service Pack 1 is required to work below solution.
1. Create a separate web application and name it MySiteshost and Wss_Content_MySites name to content database.
2. Define managed paths for the web application you created. You only need two new paths – an Explicit inclusion of my site and a Wildcard inclusion for personal.
3. Remove content database, you created on Step 1 Wss_Content_MySites by going to Central Admin / Application management / content databases / choose the web application in step 1 and click on the content database and remove.
4. Addcontentdb you have removed from step 3 to your existing main portal from where you wish to move your my sites from. To do that, go to the same location as mentioned in Step 3 and this time choose your main main portal from drop down menu and click on the add content DB and enter Wss_Content_MySites in database names. And run below command.
stsadm -o enumsites -url http://mainportal > D:MySites.xml
After running the command it will generate XML with the list of sites under your portal, which includes my sites and your other organization portal under the url entered in the command. Edit the XML file and just keep my sites and remove the rest of the sites. This is how your XML entries look like.
Url=”http://yourportal/personal” Owner=”yourdomainsharepointadmin” ContentDatabase=”WSS_Content_mainportal” StorageUsedMB=”0.6″ StorageWarningMB=”0″ StorageMaxMB=”0″ />
If you notice above XML entries there are several things you can configure if you wish to, if you have not set your my sites quota you can change StorageMaxMB=”toyourdisiredsize”
5. Move all your my sites to the content database you created and added to your existing portal in the step 4. To do that run below stsadm command.
stsadm -o mergecontentdbs -url http://mainportal -sourcedatabasename wss_content_mainportal -destinationdatabasename Wss_Content_MySites – filename C:MySites.xml -operation 3
All you are doing is moving your my sites from your main content database to newly created content database in step 4. While this command is running if you go to content databases from Central Admin, you can see that your sites are moving.
6. Remove content database, you attached on Step 4 Wss_Content_MySites by going to Central Admin / Application management / content databases / choose the web application in step 1 and click on the content database and remove.
7. Addcontentdb you have removed from step 7 to your my Sites portal you created in Step 1. To do that go to the same location as mentioned in Step 3 and this time choose your main your mysites portal created in step 1 from drop down menu and click on the add content db and enter Wss_Content_MySites in database name.
8. Change SSP association, you will have to change your my sites web application association on SharedServices. go to Central admin site and click on SharedServices and under User profiles and mystes click on My Site settings and enter your web application created in Step 1 under personal site provider field followed by /mysite.
After this step give it a mnt or so to update your url and hopefully everything should work as expected. But as I mentioned at the beginning of my blog some time it is possible to throw below error, to fix this issue, you will have to copy your main portal web.config from c:inetpubwwwrootwssvirtualdirectories and chose your main portal port usually it will be 80 and copy to your new web application port within the same location you created in step one, as an example your new web application port could be 82. This should fix the issue.
Server Error in '/' Application. Configuration Error Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately. Parser Error Message: Could not load file or assembly 'System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified. Source Error:
Line 147: <assemblies> Line 148: <add assembly="Microsoft.SharePoint, Version=188.8.131.52, Culture=neutral, PublicKeyToken=71e9bce111e9429c" /> Line 149: <add assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> Line 150: </assemblies> Line 151: <expressionBuilders>
Source File: C:inetpubwwwrootwssVirtualDirectories7082web.config Line: 149 Assembly Load Trace: The following information can be helpful to determine why the assembly 'System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' could not be loaded.
WRN: Assembly binding logging is turned OFF. To enable assembly bind failure logging, set the registry value [HKLMSoftwareMicrosoftFusion!EnableLog] (DWORD) to 1. Note: There is some performance penalty associated with assembly bind failure logging. To turn this feature off, remove the registry value [HKLMSoftwareMicrosoftFusion!EnableLog].