π ~1 min read
Table of contents
Symptom & Impact
SQL Browser on Windows Server 2019 fails to bind UDP 1434, so named instances cannot be discovered. Client connections that rely on instance name resolution time out, while default-instance connections continue to work, producing inconsistent application errors.
Environment & Reproduction
Occurs when another process or a duplicate Browser instance already holds UDP 1434. Inspect listening ports and Application log entries from SQLBrowser.
Get-Service -Name sql
Get-WinEvent -LogName System -MaxEvents 40
Get-HotFix | Sort-Object InstalledOn -Descending | Select-Object -First 10
Root Cause Analysis
Causes include a second monitoring agent listening on UDP 1434, residual Browser process from a failed restart, or firewall rules that block bind even on loopback.
Quick Triage
List UDP listeners and find the PID holding port 1434 before changing any service state.
sc.exe query sql
Get-Service -Name sql | Select-Object Status,StartType
Get-EventLog -LogName System -Newest 30 | Where-Object {$_.Source -match 'sql'}
Step-by-Step Diagnosis
Read SQL Browser events and identify the conflicting process holding the port.
Get-WinEvent -LogName System -MaxEvents 50 | Where-Object {$_.ProviderName -match 'sql'} | Select TimeCreated,Id,LevelDisplayName,Message
sc.exe qfailure sql
sfc /verifyonly

Solution β Primary Fix
Stop the conflicting listener or change its port, then restart SQL Browser to bind 1434 cleanly.
Still having issues? Our IT Solutions & Services team can diagnose and resolve this for you. Get in touch for a free consultation.
Restart-Service -Name sql -Force
Get-Service -Name sql | Select-Object Status,StartType
Get-WinEvent -LogName System -MaxEvents 20 | Where-Object {$_.ProviderName -match 'sql'}

Solution β Alternative Approaches
If the conflict cannot be removed, run named-instance clients with explicit TCP port settings and disable Browser.
sc.exe config sql start= auto
sc.exe failure sql reset= 86400 actions= restart/60000/restart/60000/run/1000
Restart-Service -Name sql -Force
Verification & Acceptance Criteria
Browser runs, UDP 1434 is bound by sqlbrowser.exe, and remote tools resolve named instances on the first attempt.
Get-Service -Name sql
Get-WinEvent -LogName System -MaxEvents 25 | Where-Object {$_.ProviderName -match 'sql' -and $_.LevelDisplayName -eq 'Error'}
Test-NetConnection -ComputerName localhost -Port
Rollback Plan
Revert Browser configuration changes and restart the prior listener to its earlier port.
Get-HotFix | Sort-Object InstalledOn -Descending | Select-Object -First 5
wbadmin get versions
# Restore previous configuration export if available
Prevention & Hardening
Reserve UDP 1434 for SQL Browser in deployment standards and check for port collisions in pre-prod.
Get-Service -Name sql | Export-Clixml C:/Temp/sql-baseline.xml
Get-WinEvent -LogName System -MaxEvents 50 > C:/Temp/sql-events.txt
Get-ScheduledTask | Where-Object {$_.TaskName -match 'sql'}
Related Errors & Cross-Refs
Linked to events from SQLBrowser source and Windows socket error 10048.
Related tutorial: View the step-by-step tutorial for Windows Server 2019.
View all Windows Server 2019 tutorials on the Tutorials Hub β
Browse all common problems & solutions on the Tutorials Hub.
References & Further Reading
Microsoft Learn documentation for SQL Browser, named-instance resolution, and SQL Server networking on Windows Server 2019.
Need Expert Help?
If you cannot resolve this yourself, our team offers hands-on Server Management, Managed IT Services, and flexible Support Plans. Contact us today β we respond within one business day.