SQL Server 2025 went GA in November. The upgrades have begun... and the error messages are rolling in.
I've been tracking what's biting people out there, and the same three issues keep coming up — none are showstoppers, but all of them will derail your upgrade if you're not prepared.
Here's what to watch for, and how to fix it.
1. Full-Text Search Breaks Immediately
This one's nasty because it happens silently. Your upgrade completes successfully, everything looks fine — and then your full-text queries start failing:
Msg 30010, Level 16, State 2 An error has occurred during the full-text query. Common causes include: word-breaking errors or timeout, FDHOST permissions/ACL issues, service account missing privileges, malfunctioning IFilters, communication channel issues with FDHost and sqlservr.exe, etc.
huh?
Why this happens: SQL Server 2025 completely rebuilt the full-text search components with a modern toolset. The old word breaker and filter binaries are gone. Your existing indexes are still marked as 'version 1' — but the binaries they need no longer exist on disk.
The fix: Rebuild your full-text catalogs to use the new version 2 components.
-- Check your current index version setting SELECT [name], [value] FROM sys.database_scoped_configurations WHERE [name] = 'FULLTEXT_INDEX_VERSION'; -- Rebuild the catalog (this upgrades indexes to version 2) ALTER FULLTEXT CATALOG [YourCatalogName] REBUILD;
The catch: Rebuilding large catalogs is time-consuming and will hit your CPU and I/O. Test this in a lower environment first, and don't do it during peak hours.
If you absolutely must stay on version 1 for compatibility reasons, you can copy the legacy binaries from an older instance — but that's a band-aid, not a solution. Details in Microsoft's breaking changes documentation.
2. Linked Servers Fail with TLS Errors (this is a good one)
After upgrading, your linked server queries start throwing errors like confetti:
Msg 7303, Level 16, State 1 Cannot initialize the data source object of OLE DB provider "MSOLEDBSQL" for linked server "YourLinkedServer". TCP Provider: The certificate chain was issued by an authority that is not trusted.
Or this gem:
Msg 17832, Level 20, State 18 The login packet used to open the connection is structurally invalid; the connection has been closed.
Why it happens: SQL Server 2025 uses MSOLEDBSQL 19, which enforces strict certificate validation by default. The old 'just trust me' behavior is gone. If your linked servers were set up with self-signed certificates or no certificate validation, they will fail.
The proper fix: Configure your servers with proper certificates — either from a public CA or your internal certificate authority. This is Microsoft's recommended approach and the most secure option.
The quick-and-dirty fix: If you need things working NOW and will address certificates later, you can override the secure default:
-- For existing linked servers, recreate with TrustServerCertificate
EXECUTE sp_addlinkedserver
@server = N'YourLinkedServer',
@srvproduct = N'',
@provider = N'MSOLEDBSQL',
@provstr = N'encrypt=mandatory;trustservercertificate=yes',
@datasrc = N'YourLinkedServer';
Yes, this is less secure. Yes, you should fix it properly. But sometimes you need to stop the bleeding before you can address the root cause.
Bonus pain: This also affects replication if you have a remote distributor. Same root cause, same fix options. See Microsoft's documentation for the replication-specific stored procedures.
3. Setup Restarts Your Instance During the Health Check
This one is more of a 'gotcha' than an error — but it can absolutely ruin your day if you're not expecting it.
When upgrading from SQL Server 2022 to 2025, the setup wizard restarts your SQL Server service during the health check phase. Not during the actual upgrade. During the pre-check.
If you're like me, you like to prep everything, answer all the dialogs, and then pause at the final step so you can click 'Upgrade' at exactly the right moment during your maintenance window.
You can't do that anymore. The moment you proceed past a certain point in the wizard, your instance goes down — even if you haven't committed to the upgrade yet.
Why it happens: The health check needs to evaluate certain rules that require stopping and starting the service. Microsoft's logs show it's checking things like Engine_IsLPIMEnabledForX64.
The fix: Plan for it. Your maintenance window starts when you launch the upgrade wizard, not when you click the final button. Communicate this to your stakeholders.
From Aaron Bertrand's recent post on this:
"I can no longer advocate doing that as it is more intrusive than it used to be."
Before You Upgrade
A quick checklist:
Full-Text Search: Inventory your full-text catalogs. Plan rebuild time. Test in dev first.
Linked Servers: Check your certificate situation. Fix it properly or plan for the workaround.
Maintenance Window: Start it earlier than you think. The wizard is more intrusive now.
Read the docs: Microsoft's known issues page and breaking changes documentation are worth your time.
SQL Server 2025 is solid. But like every major version, the upgrade path has some surprises. Better to know about them now than after you've begun the upgrade.
More to Read
Known Issues So Far in SQL Server 2025 — Brent Ozar
sp_addlinkedserver (Transact-SQL) — Microsoft Docs
No comments:
Post a Comment