Upgrading from Feature Release 19 to Feature Release 20
Upgrading from Feature Release 19 to Feature Release 20
Note: This is a draft article that is subject to change.
Prerequisite
Backup customer data (typically everything at C:\ProgramData\FotoWare
) before starting the upgrade. For more information, see Backing up a Fotoware system.
Uninstalling the FotoWeb MongoDB service
- Stop the existing MongoDB service by running
net stop fwmongodb
. - Remove the FotoWeb MongoDB service using the Windows service
manager, services.msc
.
If you are using an external MongoDB service, you must stop it manually.
Uninstalling Feature Release 19
Uninstall Feature Release 19 software using the standard installer, for example, in Windows Control Panel. The uninstaller stops all FotoWeb services, including the FotoWeb MongoDB server.
Upgrading MongoDB version from 4.4 to version 8.x
- Download zip packages of MongoDB versions 5, 6, and 7 for Windows x64 platform from https://www.mongodb.com/try/download/community.
Direct links:
- Version 5: https://fastdl.mongodb.org/windows/mongodb-windows-x86_64-5.0.30.zip
- Version 6: https://fastdl.mongodb.org/windows/mongodb-windows-x86_64-6.0.18.zip
- Version 7: https://fastdl.mongodb.org/windows/mongodb-windows-x86_64-7.0.16.zip
- Download the msi installer of MongoDB version 8 for Windows x64 platform from Download MongoDB Community Server.
- Extract the files from the zip packages of MongoDB versions 5, 6, and 7 to any destination.
- Install MongoDB version 5 without installing it as a Windows Service.
- In a cmd shell, run:
"<uzipped_folder_of_mongodb5>\bin\mongod.exe" --dbpath=c:\ProgramData\FotoWare\FotoWeb\Operations\MongoDBData\
- In mongo.exe/Robo 3T/Compass, run the following command to update the version to 5.0 (in Robo 3T/Compass creating a new connection to
localhost:27017
is required, as the default port number was changed in version 5):
db.adminCommand( { setFeatureCompatibilityVersion: "5.0" } )
- Close Robo 3T/Compass.
- Return to the open cmd session and stop the
mongod.exe
process by selecting Ctrl+C.
- Repeat the above steps for MongoDB version 6
Note: Remember to change the path and version numbers
"<uzipped_folder_of_mongodb6>\bin\mongod.exe" --dbpath=c:\ProgramData\FotoWare\FotoWeb\Operations\MongoDBData\
db.adminCommand( { setFeatureCompatibilityVersion: "6.0" } )
- Repeat the above steps with MongoDB version 7
Note: Remember to change the path.
"<uzipped_folder_of_mongodb7>\bin\mongod.exe" --dbpath=c:\ProgramData\FotoWare\FotoWeb\Operations\MongoDBData\
Note: The command for version 7 is different:
db.adminCommand( { setFeatureCompatibilityVersion: "7.0", confirm: true } )
-
Stop the mongod.exe process by selecting Ctrl+C in the open cmd session and close Robo 3T/Compass.
-
You can now delete the folders with the extracted zip files for MongoDB versions 5, 6, and 7.
-
Run the msi installer of MongoDB version 8. Select Complete Installation and Install MongoDB as a Service.
- Keep the service name as
MongoDB
. - Data Directory and Log Directory can be set to the default values or another location not pointing to
c:\ProgramData\FotoWare...
- If you set MongoDB Windows service account to something other than the default Network Service, ensure it has full permission on the Data Directory and Log Directory.
Finish the installation using the installation wizard.
-
Open Windows Services, for example, by going to Control Panel > Administration Tools, and start the MongoDB Server (MongoDB) service.
-
In mongo.exe/Robo 3T/Compass, run the following command to update the version to 8.0:
db.adminCommand( { setFeatureCompatibilityVersion: "8.0", confirm: true } )
-
As a test, run the following command in the MongoDB shell or Robo 3T/Compass and ensure it outputs version 8, for example,
8.0.6
:
db.version()
-
Stop MongoDB service.
-
Copy the files from
C:\ProgramData\FotoWare\FotoWeb\Operations\MongoDBData\
to the path set for Data Directory. -
Copy the files from
C:\ProgramData\FotoWare\FotoWeb\Operations\Logs\MongoDB\
to the path Log Directory. -
Run MongoDB service.
Configuring FotoWeb
InC
:\ProgramData\FotoWare\FotoWeb\Server Settings\Configuration\System.settings
file, set MongoDBPort
to 27017
for the following two settings and save the file:
<ServerDatabaseSettings>
<FotoWareDatabaseSettings>
Note: We recommend using the default port 27017 or an alternative port. The legacy FotoWeb port 7200 is no longer allowed, and we recommend avoiding well known ports.
If you skip this step and leave the old ports in the system.settings file, the upgrade wizard will display the following error message and will not run.
In this case, after fixing the port numbers, the upgrade wizard can be run manually via cmd:
"C:\Program Files\FotoWare\FotoWeb\fwsetup.exe" -installModeReal
If FR20 was installed before updating MongoDB:
- Run the FotoWeb Settings app (ConfigApp) > Database and set MongoDB host to localhost:27017.
- Select Save.
- Open the
C:\ProgramData\FotoWare\FotoWeb\Server Settings\Configuration\System.settings
file and set the MongoDB port to 27017 (there are two ! entries). - Save the file.
- Rerun the upgrade wizard manually -
"C:\Program Files\FotoWare\FotoWeb\fwsetup.exe" -installModeReal
. - In
system.settings
or in the FotoWeb config app, set the MongoDB connection string to match what you set up for the service when you installed MongoDB version 8. Note that this is repeated in two places insystem.settings
. - In the Index Manager config app, set the MongoDB connection string to match what you set up for the service when you installed MongoDB version 8.
Note: We recommend using the default port 27017 or an alternative port. The legacy FotoWeb port 7200 is no longer allowed, and we recommend avoiding well known ports.
Installing the new Feature Release 20 software
- Upgrade to the latest version of Index Manager.
- In the Index Manager Settings app, go to General > Indexes and make sure the MongoDB host is updated to the new port number
27017
if you are using the Push metadata to FotoWeb server option. - Install the FotoWeb FR20 release using the FotoWeb installer and following the upgrade process.