Buy me an espresso

March 25, 2008

64 bit database migration (the easy way)

DB Installation: Win 2k3 R2 SP2, SQL Server 2005 32 bit
Goal: Win 2k3 R2 SP2, SQL Server 2005 64 bit

If you are planning on migrating from 32 to 64 bit for your SQL Server ... look no further. After reading though blogs, white papers, and books ... I decided to that there was an easier way to handle all this nonsense. In simple terms:
  1. Backup the databases on the 32 bit DB server (let's call it SharePointDBServer)
  2. Take the web server offline, stop all services, sites, app pools
  3. Take SharePointDBServer offline
  4. Bring up a different 64 bit DB server with the same name as the old one (SharePointDBServer)
  5. Restore the backups to the 64 bit DB server.
  6. Reboot the web server
  7. Restart any services on the web server that were stopped
That's it!

Keep in mind that if you have a DB server naming convention like SQL64SharePoint ... it probably won't work ... or if you cannot take the 32 bit DB offline ... that won't work either, etc, etc ...

If you have the means, this is ridiculously easier then trying this through STSADM ...

Things to remember:
  1. Pay attention to the Owner of the databases after they are created on the new 64 bit server ... this will most likely be domain/Administrator ... which may not be the Owner of the previous DBs.
  2. The services running on the new DB server will not be using the identities that were customized for the old DB server ... you will need to put in the correct user for some of those services.

March 12, 2008

Content Deployment ... 5323 and 4958

Overview

While attempting a simple content deployment the following errors where holding back the import phase ...

Event Type: Error

Event Source: Office SharePoint Server
Event Category: Content Deployment
Event ID: 5323
Date: 3/10/2008
Time: 10:22:57 PM
User: N/A
Computer: ServerName
Description:
Failed to transfer files to destination server for Content Deployment job 'Entire Site Collection'. Exception was: 'System.Net.WebException: The underlying connection was closed: An unexpected error occurred on a send. ---> System.IO.IOException: Unable to write data to the transport connection: An established connection was aborted by the software in your host machine. ---> System.Net.Sockets.SocketException: An established connection was aborted by the software in your host machine
--------------------------------------------------------------------------------------------------------------------------------------------------
Event Type: Error
Event Source: Office SharePoint Server
Event Category: Content Deployment
Event ID: 4958
Date: 3/10/2008
Time: 10:22:58 PM
User: N/A
Computer:
ServerName
Description:
Publishing: Content deployment job failed. Error: 'System.Net.WebException: The underlying connection was closed: An unexpected error occurred on a send. ---> System.IO.IOException: Unable to write data to the transport connection: An established connection was aborted by the software in your host machine. ---> System.Net.Sockets.SocketException: An established connection was aborted by the software in your host machine

Solution

Turns out, this is related to "TCP Chimney" (read more here). There a registry value that needs to be changed here: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
in order for the content deployment to function.

Set the value of
EnableTCPChimney = 0.

OR Command line: Netsh int ip set chimney DISABLED

Then reboot the server.

Setting the following values to zero will also be include in a soon to be released hotfix ...

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters - EnableRSS = 0
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters - EnableTCPA = 0