Overview
A Plesk Windows update error is one of those problems that can stop your hosting environment cold. Whether you’re running Plesk Obsidian on a Windows VPS or a dedicated server, update failures can leave the panel partially upgraded, services broken, or the update queue stuck in a loop. The official Plesk documentation covers the happy path well enough, but it’s light on what to do when things go sideways.
Update failures on Windows typically come down to a handful of root causes: locked files from running processes, Windows Update conflicts, insufficient disk space, corrupted installer caches, or a failed previous update that left the system in an inconsistent state. The tricky part is that Plesk’s error output isn’t always specific enough to tell you which one you’re dealing with.
This article is for anyone who’s kicked off a Plesk update through the admin panel or the CLI and hit a wall. It covers how to diagnose the failure, clean up the environment, and complete the update safely.
Prerequisites
- Administrator access to the Windows Server (RDP or console)
- Plesk Obsidian 18.x or later (steps may vary slightly for older versions)
- Access to the Plesk Admin panel (port 8443) or PowerShell/CMD as Administrator
- At least 5 GB of free disk space on the system drive (C:) before starting
- A recent backup of your Plesk configuration — if you don’t have one, take a full Plesk backup before proceeding
- Windows Server 2019 or 2022 recommended; Server 2016 is still supported but has more edge cases
Step-by-Step: Fixing a Failed Plesk Update on Windows
Step 1: Check the Plesk Update Log First
Before touching anything, read the actual log. Most engineers skip this and start guessing. Don’t.
The primary update log is located at:
C:Program Files (x86)ParallelsPleskadminlogspanel.log
You can also check the dedicated installer log:
C:UsersAll UsersParallelsPlesklogsinstall.log
Open either file in Notepad++ or PowerShell and search for ERROR or FAILED. The lines immediately before those keywords usually tell you what actually broke — a locked DLL, a failed service stop, a missing dependency.
Step 2: Verify Disk Space
Plesk’s installer unpacks a significant amount of data during upgrades. If C: runs out of space mid-install, the update fails silently or with a generic error. Check available space before retrying:
Get-PSDrive C | Select-Object Used, Free
You need at least 5 GB free. If you’re under that, clear the Windows temp folder and the Plesk installer cache:
Remove-Item -Path "C:WindowsTemp*" -Recurse -Force -ErrorAction SilentlyContinue
Remove-Item -Path "C:UsersAll UsersParallelsPleskinstaller*" -Recurse -Force -ErrorAction SilentlyContinue
📝 Note: Clearing the installer cache forces Plesk to re-download update packages. This is intentional — a corrupt cache is a common silent cause of update failures.
Step 3: Stop Conflicting Services Before Retrying
Plesk needs to stop and restart several services during an update. If any of them are in a hung state, the installer can’t proceed. Run this in an elevated PowerShell window to stop the main Plesk services cleanly:
Stop-Service -Name "plesk_task_manager" -Force -ErrorAction SilentlyContinue
Stop-Service -Name "plesksrv" -Force -ErrorAction SilentlyContinue
Stop-Service -Name "sw_cp_server" -Force -ErrorAction SilentlyContinue
Stop-Service -Name "IISADMIN" -Force -ErrorAction SilentlyContinue
⚠ Warning: Stopping IISADMIN will take down all IIS-hosted websites temporarily. Do this during a maintenance window or off-peak hours.
Step 4: Run the Plesk Installer from the CLI
Running updates through the Plesk web UI gives you limited feedback. The CLI installer shows you exactly what’s happening in real time, which makes it far easier to catch failures. Open an elevated Command Prompt and run:
cd "C:Program Files (x86)ParallelsPleskadminbin"
plesk installer --select-release-current --upgrade-installed-components
Watch the output carefully. If it stops at a specific component, that component is your problem. Note the name and check the log.
📝 Note: If the plesk installer binary isn’t responding or throws an error itself, download a fresh copy of the Plesk Installer for Windows directly from installer-win.plesk.com and run it as Administrator.
Step 5: Repair Broken Components Individually
If a specific component failed (you’ll see this in the log as something like Component 'panel' installation failed), you can target just that component instead of running the full upgrade again:
plesk installer --select-release-current --install-component panel
Replace panel with the component name from your log — common ones are mailserver, dns, web-hosting, and ssl-certificates.
Step 6: Check for Pending Windows Updates
This one trips up a lot of people. If Windows Update has installed patches that require a reboot, and you haven’t rebooted yet, certain system DLLs are in a locked state. Plesk’s installer can’t replace or modify them, and the update fails. Check for pending reboots:
Test-Path "HKLM:SOFTWAREMicrosoftWindowsCurrentVersionWindowsUpdateAuto UpdateRebootRequired"
If that returns True, reboot the server before retrying the Plesk update. This is the most common cause of cryptic DLL-related failures in my experience, and it’s almost never mentioned in the error output.
Step 7: Verify the Update Completed Successfully
After the installer finishes, confirm the Plesk version matches what you expected:
plesk version
Then restart the Plesk services and verify the panel loads on port 8443:
net start plesksrv
net start sw_cp_server
Common Issues and Troubleshooting
Error: “Another installation is already running”
This usually means a previous update attempt left a lock file behind. The installer checks for a mutex or a PID file and refuses to start if it thinks another instance is active. Find and kill any orphaned plesk_installer processes:
Get-Process | Where-Object { $_.Name -like "*plesk*" } | Stop-Process -Force
Then delete the lock file at C:UsersAll UsersParallelsPleskinstallerinstaller.lock if it exists, and retry.
Error: “Access Denied” or “Cannot write to directory”
The installer is running without sufficient privileges, or antivirus software is blocking file writes. Make sure you’re running CMD or PowerShell as a true Administrator (right-click, “Run as administrator”). If you have third-party antivirus on the server, temporarily disable real-time protection during the update. Windows Defender on Server 2019/2022 can also block installer writes to C:Program Files (x86)Parallels. Add that path as an exclusion before retrying.
Update Stalls at a Specific Percentage and Never Moves
This is almost always a network timeout while downloading packages, or the Plesk download servers being temporarily unreachable. Check whether the server can reach Plesk’s update servers:
Test-NetConnection -ComputerName autoinstall.plesk.com -Port 443
If that fails, check your firewall rules and confirm outbound HTTPS (port 443) is allowed. On some of our managed VPS configurations at Host & Tech, outbound firewall rules are tightened by default — you may need to whitelist autoinstall.plesk.com and installer-win.plesk.com.
Plesk Panel Won’t Load After Update
If the update completes but the panel returns a 502 or won’t respond on port 8443, the sw_cp_server service likely failed to start. Check its status and review its own log:
Get-Service sw_cp_server
Get-Content "C:Program Files (x86)ParallelsPleskadminlogssw_cp_server.log" -Tail 50
A missing or corrupted sw_engine.dll is a common culprit here. If that’s what the log shows, run a component repair targeting the panel component as described in Step 5.
Error: “SQL Server connection failed during update”
Plesk on Windows uses Microsoft SQL Server (or SQL Server Express) for its internal database. If the SQL service stopped or the credentials changed, the installer can’t update the schema. Verify the SQL service is running:
Get-Service | Where-Object { $_.DisplayName -like "*SQL*" }
If it’s stopped, start it and retry. If the credentials issue is deeper, check C:Program Files (x86)ParallelsPleskadminconfdb.conf to confirm the database connection settings are intact.
FAQ
For related hosting options, see VPS SSD Hosting.
Frequently Asked Questions
How do I manually trigger a Plesk update on Windows Server?
Open an elevated Command Prompt, navigate to C:Program Files (x86)ParallelsPleskadminbin, and run: plesk installer –select-release-current –upgrade-installed-components. This runs the update through the CLI so you can see real-time output instead of waiting on the web UI, which is much easier to troubleshoot if something goes wrong.
Will updating Plesk on Windows take down my websites?
Briefly, yes. The installer stops IIS and several core services during the upgrade, which typically causes 2-10 minutes of downtime depending on the server specs and the size of the update. Schedule updates during low-traffic hours and notify your clients in advance if you’re on shared or reseller hosting.
Can I roll back a Plesk update on Windows if something breaks?
Plesk doesn’t offer a built-in one-click rollback for version upgrades. Your best option is to restore from a full server snapshot or backup taken before the update. This is why taking a Plesk backup and a VM snapshot before upgrading isn’t optional — if you’re on a VPS with snapshot support, that’s your safety net.
How much disk space does a Plesk update need on Windows?
Plesk recommends at least 5 GB of free space on the system drive before running an update. In practice, major version upgrades (like moving from Obsidian 18.0.x to a newer minor release) can use more during the extraction phase. Check free space with Get-PSDrive C in PowerShell before you start.
Why does my Plesk update keep failing at the same component every time?
If the failure is always at the same component, that component likely has a corrupted local cache or a dependency conflict. Clear the installer cache at C:UsersAll UsersParallelsPleskinstaller and try installing just that component using: plesk installer –select-release-current –install-component [component-name]. If it still fails, check the install.log for the specific DLL or file it’s choking on.