Windows Server
- Falls ein Replica Set verwendet wird — kontaktieren Sie bitte den technischen Support von Passwork für eine ordnungsgemäße Aktualisierung und Datensicherung.
- Falls Passwork auf einem virtuellen Server installiert ist, wird empfohlen, vor der Aktualisierung einen virtuellen Snapshot des Betriebssystems zu erstellen.
Vorbereitung und Entfernung der veralteten Version
Backup erstellen
Standardmäßig befinden sich die MongoDB-Administrationswerkzeuge nicht in der Umgebungsvariable $PATH. Sie müssen die Werkzeuge über PowerShell suchen.
Öffnen Sie PowerShell als Administrator:
- Klicken Sie mit der rechten Maustaste auf das Start-Symbol in der unteren linken Ecke des Bildschirms;
- Wählen Sie Windows PowerShell (Administrator) aus dem Kontextmenü.
Suchen Sie nach Administrationswerkzeugen:
- PowerShell
$utilityPath = Get-ChildItem -Path "C:\" -Filter "mongodump.exe" -Recurse -ErrorAction SilentlyContinue | Select-Object -First 1; $utilityDirectory = $utilityPath.DirectoryName; cd $utilityDirectory
Wenn MongoDB und die Administrationswerkzeuge auf einem nicht standardmäßigen Laufwerk installiert wurden, müssen Sie den Suchpfad im Parameter -Path ändern.
Nach der Ausführung wechselt das aktuelle Arbeitsverzeichnis zu dem Verzeichnis, in dem sich die Werkzeuge befinden. Zur Überprüfung führen Sie Folgendes aus:
- PowerShell
dir
Erstellen Sie ein Verzeichnis:
- PowerShell
mkdir C:\backup\
Erstellen Sie ein Backup:
- PowerShell
$timestamp = Get-Date -Format "yyyy-MM-dd_HH-mm"
.\mongodump --out "C:\backup\mongo-$timestamp"
Die Werkzeuge mongodump und mongorestore befinden sich im selben Verzeichnis der MongoDB 4.x-Installation.
Entfernung
Stoppen Sie den Dienst:
- PowerShell
net stop MongoDB
Löschen Sie den Datenbankdienst:
- PowerShell
sc.exe delete "MongoDB"
Löschen Sie das Verzeichnis mit dem Datenbankinhalt:
- PowerShell
if (Test-Path "$env:ProgramFiles\MongoDB") {
Remove-Item -Path "$env:ProgramFiles\MongoDB" -Recurse -Force
Write-Host "MongoDB directory deleted." -ForegroundColor Green
} else {
Write-Host "MongoDB directory not found."
}
Suchen Sie MongoDB in der Registrierung:
- PowerShell
$mongo = Get-ChildItem -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" | Where-Object {
($_ | Get-ItemProperty).DisplayName -like "*MongoDB*"
}
Löschen Sie den Registrierungseintrag:
- PowerShell
if ($mongo) {
$mongo.PSPath | Remove-Item -Recurse -Force
Write-Host "Entry removed from registry" -ForegroundColor Green
} else {
Write-Host "Entry with DisplayName not found"
}
Installation und Wiederherstellung des Backups
Installation
Laden Sie das MongoDB-Installationsprogramm herunter:
- PowerShell
try {
(New-Object System.Net.WebClient).DownloadFile("https://repos.passwork.pro/repository/windows_packages/mongodb_database_latest.msi", "$env:SystemDrive\Windows\Temp\mongodb_database_latest.msi")
Write-Host "MongoDB successfully downloaded" -ForegroundColor Green
} catch {
Write-Host "Error downloading MongoDB: $_" -ForegroundColor Red
}
Sie können das Installationsprogramm auch manuell herunterladen
Installieren Sie MongoDB mit Standardeinstellungen:
- PowerShell
try {
Start-Process -FilePath "msiexec.exe" -ArgumentList "/l*v", "$env:SystemDrive\Windows\Temp\mdbinstall.log", "/qb", "/i", "$env:SystemDrive\Windows\Temp\mongodb_database_latest.msi", "SHOULD_INSTALL_COMPASS=0", "ADDLOCAL=Router,ServerService" -Wait -ErrorAction Stop
} catch {
Write-Host "MongoDB installation error: $_." -ForegroundColor Red
}
Um MongoDB auf einem anderen Laufwerk zu installieren, fügen Sie "INSTALLLOCATION=A:\MongoDB" hinzu
Erstellen Sie ein Verzeichnis für die MongoDB-Administrationswerkzeuge:
- PowerShell
if (-not (Test-Path "$env:ProgramFiles\MongoDB\Tools\")) {
New-Item -ItemType Directory -Force -Path "$env:ProgramFiles\MongoDB\Tools\"
Write-Host "Directory successfully created" -ForegroundColor Green
} else {
Write-Host "Directory already exists"
}
Laden Sie die Administrationswerkzeuge herunter:
- PowerShell
try {
(New-Object System.Net.WebClient).DownloadFile(
"https://repos.passwork.pro/repository/windows_packages/database_tools_latest.zip",
"$env:SystemDrive\Windows\Temp\database_tools_latest.zip"
)
Write-Host "Administration utilities downloaded" -ForegroundColor Green
} catch {
Write-Host "Error downloading administration utilities: $_" -ForegroundColor Red
}
Sie können die Werkzeuge auch manuell herunterladen
Entpacken Sie den Inhalt:
- PowerShell
Expand-Archive `
-Path "$env:SystemDrive\Windows\Temp\database_tools_latest.zip" `
-DestinationPath "$env:ProgramFiles\MongoDB\Tools\"
Überprüfen Sie die Verbindung zur Shell:
- PowerShell
cd "$env:ProgramFiles\MongoDB\Tools\"
.\mongosh mongodb://localhost:27017
Wiederherstellung des Backups
Wenn die Verbindung zur Shell erfolgreich ist, stellen Sie die Datenbanken aus dem Backup wieder her:
- PowerShell
cd "$env:ProgramFiles\MongoDB\Tools\"
.\mongorestore --drop "C:\backup\mongo-xxxx-xx-xx_xx-xx"
Öffnen Sie Passwork, um die ordnungsgemäße Funktionsweise zu überprüfen.