FogBugz On Site has several components, loosely grouped into “Web Server” (FogBugz web app, Elastic Search, Heartbeat Pinger, Queueing Service) and “Database” (fbhosted and trialN databases). For simplicity, we recommend keeping the grouped components on the same server, and moving the group(s) as a single unit. Restoring a group of services after a hardware failure is typically the same as if you were moving to a new server… you just have less notice.

Moving the FogBugz Web Server

  1. Stop IIS and the three FogBugz services (Elastic Search, Heartbeat Pinger, and Queueing Service)
  2. Install FogBugz On Site on your new web server
    1. When prompted for details of your database and site name, provide the existing values
    2. You do not need to do anything for additional sites, as that information is stored in the fbHosted database
  3. Finalize any manual configuration such as HTTPS or Trusted Networks
  4. Backfill your search index (see step 9)
  5. Uninstall FogBugz and the services on your old web server

If you are renaming a FogBugz site as part of this move, do so after confirming the web server move is successful.

Moving the FogBugz Database(s)

For simplicity, we recommend keeping the fbhosted and trialN database(s) on the same server, though they can be split across multiple servers if desired.

  1. Take a full backup of the fbhosted and trialN databases
  2. Stop IIS and the three FogBugz services (Elastic Search, Heartbeat Pinger, and Queueing Service)
  3. Restore the fbhosted and trialN databases on the new database server
  4. Update the FogBugz sFBHostedConnectionString to point to the new server:
    HKEY_LOCAL_MACHINE\SOFTWARE\Fog Creek Software\FogBugz\<your fogbugz install directory>/Website/sFBHostedConnectionString
  5. Update tblFogBugzTrialDBServer to point to the correct SQL Server instance:
    UPDATE tblFogBugzTrialDBServer SET sSQLServerInstance = <the new instance>
  6. Start IIS and the three FogBugz services

See backup instructions for details on the mapping between trials and servers. For FogBugz to find the databases, the SELECT query provided must be accurate.

Moving the Databases *and* the Web Server

  1. Move the Web Server
  2. Confirm FogBugz functions as expected
  3. Move the databases