Updating MongoDB 3.6 to 4.4¶
Due to incompatibility of the MongoDB service versions 3.6 and 4.4 you have to export the stored data before updating and reimport them afterwards.
Hint - single system and cluster
The following instructions include the update of both, single system and cluster.
In a single system, perform all instructions, except of those concerning the replica set.
In a cluster, perfom the instructions as stated in the subchapters.
Saving the Database Content¶
Hint - cluster
In a cluster, you have to perform the following instructions on the replica set primary only.
-
Open a PowerShell (Administrator).
-
In the
%TEMP%directory, create amongodumpsubdirectory, if it does not yet exist:cd $env:TEMP mkdir mongodump -
Start MongoDB, if necessary:
Start-Service seal-mongodb -
Save the stored data:
& "C:\Program Files\MongoDB\Server\3.6\bin\mongodump.exe" --ssl --sslAllowInvalidCertificates --out "$env:TEMP\mongodump"
Updating the Database¶
Hint - cluster
In a cluster, you have to perform the following instructions except of the initializing of the database on every member of the replica set.
Caution - update member of the replica set
Make sure that all cluster members are upgraded and reconfigured before you restore the database.
-
Stop MongoDB:
Stop-Service seal-mongodb -Force -
Remove all subdirectories and files in the
C:\ProgramData\SEAL Systems\data\seal-mongodbdirectory, except of the base directory itself:Remove-Item "C:\ProgramData\SEAL Systems\data\seal-mongodb\*" -Force -Recurse -
Reinitialize the database - only on single systems and the replica set primary.
Restoring the Database Content¶
Hint - cluster
In a cluster, you have to perform the following instructions on the replica set primary only.
- Remove the admin directory:
Remove-Item "$env:TEMP\mongodump\admin" -Force -Recurse
-
Restore the data:
& "C:\Program Files\MongoDB\Tools\100\bin\mongorestore.exe" /ssl /tlsInsecure /drop "$env:TEMP\mongodump" -
Restart MongoDB:
Restart-Service seal-mongodb -Force