SHIPSTORE is primarily divided into 2 parts: Application and Database. Normally, we recommend having a dedicated server for each of these parts so the system runs at peak efficiency.
The below steps are recommended when moving your SHIPSTORE install to a different server.
Application Server
We first recommend you download our SHIPSTORE setup tool to the application server you are moving the files to. The setup tool will automate a lot of the installs that need to be performed as well as general site setup. See here for more details: SHIPSTORE Server Setup Tool
Once the setup tool has finished, you should see a new set of folders based on the file paths that were set up during the process. These folders are:
- Staging folder - Used to stage updated application files to
- Sites folder - Active working folder for the SHIPSTORE web sites
- Extras folder - Active working folder for the plugins/resources used by the SHIPSTORE applications
Once those folders are created on the new application server, your next task should be to copy the files from the existing SS application server to the new one. Find the matching folders from your existing server to the ones above, and copy all files you find in those folders to the new server's folders.
If you are not moving the database server, you can skip the next section.
Database Server
NOTE: If you are not moving the application server as well, make sure to stop the following services on the application server before continuing:
- IIS (W3SVC)
- Openfire
- ShipStore Batch Processing Service
1. Back-up SS databases on the existing DB server
The following databases are part of the SHIPSTORE install, and need to be moved:
- SHIPSTOREv4_PROD
- SHIPSTOREv4_TEST
- SHIPSTOREv4_DEV
- SHIPSTOREv4_Membership
- SHIPSTOREv4_LTL
- SHIPSTOREv4_ASN
- Hangfire
- Openfire
2. Restore databases from above step on new DB server
Copy the above backups to the new server and restore those backups there. Delete existing Security Logins for each DB (SQL logins do not transfer between servers).
3. Create SQL users on new DB server
Create the following users on the new database server, and set the ownership of each DB as indicated:
- tms
- SHIPSTOREv4_PROD
- SHIPSTOREv4_TEST
- SHIPSTOREv4_DEV
- SHIPSTOREv4_Membership
- SHIPSTOREv4_LTL
- SHIPSTOREv4_ASN
- Hangfire
- openfire
- Openfire
If you do not know the passwords for the above users, check the configuration files for the SS Site, detailed below.
Application Server pt. 2 - config files
Back on the SS app server, update the following configuration files to point to the new server(s):
If you moved the app server
- Sites folder – Under each website folder for SS, open the web.config file. Update the following settings based on the folders that were created on the server:
- AppSettings
- ExtrasPath - Match the patch you chose in the Extras Folder option on the setup tool
- DownloadsPath - Should be the same as ExtrasPath + "\Downloads"
- ChatServerName - Change to match Server name or URL for new app server
- ChatHostURL - Should be same as above, with "http://" before
- ChatRegisterURL - Should be the same as above with ":9090/plugins/restapi/v1/users" added to the end (ex: http://{server name}:9090/plugins/restapi/v1/users)
- nlog
- fileName - Change the beginning to match your desired log folder.
- archiveFileName - Change the beginning to match your desired log folder.
If you moved the database server
- Sites folder – Under each website folder for SS, open the web.config file. Update each database connection with the new database server address (look for the connectionStrings section at the top of the file)
- Openfire – Update the file found @ C:\Program Files\Openfire\conf\openfire.xml to point to the new server (look for the serverURL field at the bottom)
- Batch Processing Service
- Update the file found @ C:\Program Files\SHIPSTORE\ShipStore.BatchProcessingService\ShipStore.BatchProcessingService.exe.config with the new database server address (look for connectionString at the top of the file)
- Update the file found @ C:\Program Files\SHIPSTORE\ShipStore.BatchProcessingService\batchprocess-settings.json with the new database server address (every line with the word "Context")
Final clean-up
- Batch Processing Service
- Update the file found @ C:\Program Files\SHIPSTORE\ShipStore.BatchProcessingService\batchprocess-settings.json with the updated settings from the matching web.config files found under the Sites folder (settings names will match, but file is in JSON format so "\" needs to be "\\")
Running the updated system
If you moved the application server, we highly recommend updating any internal DNS settings so the new server is accessible at the same URL it was before the migration. If not, you will need to update the bookmarks on their station to point to the new server, and may also have to re-install the SS Merchant app if you do not update the DNS settings.
If you did not move the application server and stopped the services as mentioned in the Database section, you may restart those now.
Once complete with the above, all applications should connect and allow you to log into the website.