I need to migrate the WSS3.0 SP2 + Project Server 2007 SP2 based farm to a SPS2010 SP1 + Project Server 2010 Sp1 farm.

I create a new farm (new VM on hyperV 2012) SPS2010 based (build 14.0.6028.1000) then made a backup of the content db from old farm, restore the db to sql in the new farm and then attach the content db with stsadm.

I've tried the solution 2 times to test the entire process, I've used the same db (7GB) and was all ok, in an hour all is done.

Every time I detach the content db, delete the site collections before start, attach the new db.

Today I run again the process by attaching the content db for a final migration, but after some hours the update is still at 26% with the CPU at 96% with processor on the SQLSERVER. If I monitor the activity under Sql Server, I read a process RUNNABLE DELETE, details below:

                AllDocVersions AS ADV
            INNER JOIN
                AllDocStreams AS ADS
                ADV.SiteId = ADS.SiteId AND
                ADV.Id = ADS.Id AND
                ADV.InternalVersion = ADS.InternalVersion
                ADS.Content IS NULL AND
                ADS.RbsId IS NULL

The last step in the log file Upgrade---908.log is:

[STSADM] [SPUpgradeSession] [DEBUG] [19/04/2013 11:31:59]: UPGRADE PROGRESS: current object = [SPContentDatabase Name=WSS_Profind], current sequence = [SPContentDatabaseSequence], action 119 out of total 135 [STSADM] [SPUpgradeSession] [DEBUG] [19/04/2013 11:31:59]: UPGRADE PERCENTAGE: 26.44444444% done, Total Elapsed Time 00:44:53.2728216. [STSADM] [DeleteAllDocVersionsRowsWithNullContent (] [DEBUG] [19/04/2013 11:31:59]: Begin Initialize() [STSADM] [DeleteAllDocVersionsRowsWithNullContent (] [DEBUG] [19/04/2013 11:31:59]: End Initialize() [STSADM] [DeleteAllDocVersionsRowsWithNullContent (] [INFO] [19/04/2013 11:31:59]: Delete AllDocVersions rows with null Content and RbsId. [STSADM] [DeleteAllDocVersionsRowsWithNullContent (] [DEBUG] [19/04/2013 11:31:59]: Begin Upgrade() [STSADM] [SPContentDatabaseSequence] [DEBUG] [19/04/2013 11:31:59]: Executing SQL DDL Script.

any help is appreciated


  • please look at my steps and make sure that you run powershell commands in 2010 not stsadm!
    – Ali Jafer
    Apr 19, 2013 at 13:39

1 Answer 1


I have done this and recommend that you follow what i have done:

SharePoint 2003 – SQL server 2000

1) Run prescan.exe 2003, check there are no errors before proceeding

2) Go to Central admin – Click on “SharePoint Portal Server” – Under “Portal Site and Virtual Server Configuration” select “Configure virtual server settings from the Virtual Server List page” – select the site in question (click the name) – Under “Virtual Server Management” select “Manage Content Database” – you should now be able to see the database name (content database) being used and the server its located on!

3) Go to the SQL server that the content database resides in

4) Login to the SQL server (Enterprise Manager)

5) Go down the tree – Console root -> Microsoft SQL Servers -> SQL Server Group -> (local)(Windows NT) -> Databases -> (select the content Database)

6) Now you have the correct content database. Right click – select “All Tasks” -> click “Backup Database”

7) A new window opens. Under General tab within “Name” make sure its named correctly

8) Backup should be on “Database-complete”

9) Within “Destination” you need to empty anything within the box by selecting the item and then clicking on the remove button. Now click on the add button and select a reasonable location to store the backup database with enough room!

10) Click ok to carry on, now you should have everything setup correctly you can click on the “ok” button.

SharePoint 2007 – SQL server 2003

1) Logon to the SharePoint 2007 (wss 3.0) server

2) Open Central Administration

3) Create a new Web application

4) Go to “Central admin” -> click “Application Management” -> click “Content Databases” “Make sure you’re on the correct web application”

5) select the current content database for the new web application the you just created

6) you should be directed to a new page, scroll down to “Remove Content Database” and click on the checkbox called “Remove Content Database”

7) The content database is now not associated with the web application, go to SQL server management studios.

8) Navigate to the content database

9) Right click the content database and select “Task” -> “Restore” -> click on “Database”

10) Under “General” tab, select the radio button called “From Device” and click on the button to the right “…” , a new popup will be displayed. You need to find the backup file from the SharePoint 2003 content database that you saved earlier and then click ok

11) Click on the “Options” tab and make sure “Overwrite the existing database” is checked

12) Now click ok to run the restore process

13) Go to STSADM by running CMD and going to the following location:

C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN

14) Now you’re in the correct location you can use the following command to connect the content database back again:

Stsadm.exe –o addcontentdb –url [http address without brackets] –databaseserver [servername without brackets]

15) Now the database is attached you can run the following on stsadm:

Stsadm.exe –o enumallwebs –databasename [name of the content database] –databaseserver [name of the SQL server] –includefeatures > C:\featureCheckReport.txt

The above code is running through all the webs and its features for the given content database and returning the result in a text file for review, any parts that say missing you will need to fix

16) When the command has run and is complete go to C: drive and look for the file featureCheckRepot.txt , open the file and make sure all looks fine (no missing features ect)

17) Run the next command to make sure all is good for upgrade to 2010:

Stsadm.exe –o preupgradecheck

It will run through some tests, don’t worry about some failed steps. Wait for it to complete and go to the folder that it has shown you where it has saved the report. Open the html file to see and discrepancies… as it’s going to be on a separate farm some of the errors are irrelevant like OSPrerequisite, InvalidDatabaseSchema, UnsupportedSqlServerVersion. Ignore anything from the 12hive folder ;) in the html report.

18) Before you start the backup process! You need to do the following:

1) Within the content database go to the storage folder

2) Open “Full Text Catalogs”

3) Right click the offending file (for me it’s called “ix_SITE”)

4) Select rebuild

5) Select to delete the existing file and rebuild

6) If it just hangs in recreating the file (constant loading but not getting anywhere after a while), then close SQL server and reopen. Go back to the file and delete the file

The reason why you have to do this process, SQL server 2000 doesn’t have this file and is needed for backing up the database within 2005, without this SQL with throw an error stating that there is an error with the file (its offline) when in fact it doesn’t exist! This might take some time

19) Go to SQL server manager and go to the content database, right click -> Tasks -> click Backup

20) Under general tab make sure the type is full and the destination is set the desired location with enough space.

Make sure the log that was created when you attach the content database doesn’t contain any errors like access denied which can hinder the upgrade on 2010. After you complete all the steps you could go to the web application (URL) to see if the site is working correctly, once your happy that it’s functioning correctly you can move on to the next stage

SharePoint 2010 – SQL Server 2012

1) You can run but is not essential stsadm.exe –o preupgradecheck for clarification that everything is setup correctly

2) In Central Admin create a new web application / take a note of its content database name

3) Remove the content database from central admin (make sure it’s the correct web app)

4) Open SQL server, navigate to the new content database and restore from the 2007 content database. Right click the content database -> tasks -> restore -> click database

5) Go to the tab on the left and select “options”, under “Restore Option” check “Overwrite the existing database (WITH REPLACE)”. Click ok to start the process

6) open PowerShell: go to START -> All Programs -> click Microsoft SharePoint 2010 Products -> click SharePoint 2010 Management Shell Add the following command to attach the database to the new web application:

Mount-SPContentDatabase "<ContentDb>" -DatabaseServer "<DbServer>" -WebApplication http://SiteName

7) wait for it to reach 100% , make sure there are no errors, run in PowerShell:

Test-SPContentDatabase –name WSS_Content_test –WebApplication http://test:80 | ConvertTo-Html | Out-File

8) look at the generated report for any errors that you would need to fix,

9) You can now navigate to the web application URL and test that everything is running correctly

16) Run the custom utilities tool

17) Review the report generated by the custom utility

18) Configure access security

19) Rebuild search index

sorry for the long list but it works! You can use it to make sure that what you have done is the same, just incase you missed a part ;)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.