Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy: SQL Server 2025 (17.x)
W tym artykule opisano istotne zmiany w funkcjach aparatu bazy danych programu SQL Server wprowadzone w programie SQL Server 2025 (17.x). Te zmiany mogą powodować przerwanie aplikacji, skryptów lub funkcji opartych na wcześniejszych wersjach programu SQL Server.
Połączenia serwera połączonego kończą się niepowodzeniem po uaktualnieniu
Program SQL Server 2025 (17.x) zawiera zmiany w szyfrowaniu, które powodują niekompatybilność z serwerami połączonymi. Te zmiany mogą powodować przerwanie aplikacji, skryptów lub funkcji opartych na wcześniejszych wersjach programu SQL Server.
Uaktualniając SQL Server z poprzednich wersji do SQL Server 2025 (17.x) z Microsoft OLE DB Driver 19, istniejące konfiguracje powiązanych serwerów mogą przestać działać poprawnie. Różne wartości domyślne parametru szyfrowania mogą spowodować ten błąd, chyba że podano prawidłowy certyfikat.
W programie SQL Server 2025 (17.x):
-
Serwery połączone z wystąpieniami programu SQL Server 2025 muszą używać parametru
Encryptw parametrach połączenia - Podczas migracji z poprzednich edycji programu SQL Server do programu SQL Server 2025 ze sterownikiem Microsoft OLE DB Driver 19 istniejące konfiguracje serwera połączonego mogą zakończyć się niepowodzeniem
Aby uzyskać informacje na temat bezpiecznego nawiązywania połączenia z wystąpieniami programu SQL Server 2025 (17.x), zobacz TDS 8.0.
Składniki replikacji zawodzą po aktualizacji
Program SQL Server 2025 (17.x) zawiera zmiany szyfrowania, które wprowadzają zmianę niekompatybilną w przypadku replikacji transakcyjnej, migawki, replikacji równorzędnej i scalania.
Składniki replikacji mogą ulec awarii po aktualizacji do programu SQL Server 2025 (17.x) z dowolnej poprzedniej wersji programu SQL Server, jeśli instancja programu SQL Server:
- Jest skonfigurowany jako wydawca replikacji.
- Ma zdalnego dystrybutora w topologii replikacji.
- Nie jest skonfigurowany przy użyciu zaufanego certyfikatu.
Po uaktualnieniu może zostać wyświetlone następujące zachowanie:
- Replikacja nadal kończy się pomyślnie, ale zmiany publikacji kończą się niepowodzeniem.
- Monitor replikacji w programie SQL Server Management Studio (SSMS) kończy się niepowodzeniem.
- Stan agenta w interfejsie użytkownika programu SSMS kończy się niepowodzeniem.
Dystrybutor zdalny używa serwera połączonego do komunikacji między wydawcą a dystrybutorem. Bezpieczne ustawienie domyślne wprowadzone w programie SQL Server 2025 (17.x) dostawcy OLEDB 19 wymaga tego.TrustServerCertificate=False
Możesz rozwiązać ten problem z wyprzedzeniem przed rozpoczęciem uaktualniania lub rozwiązać go, jeśli po uaktualnieniu wystąpi awaria składników replikacji.
Przed rozpoczęciem uaktualniania
Jeśli wiesz, że po uaktualnieniu wystąpienie SQL Servera napotka ten problem, możesz zapobiec niepowodzeniu, konfigurując wystąpienie do korzystania z publicznego certyfikatu komercyjnego lub certyfikatu z wewnętrznego urzędu certyfikacji.
Jest to zalecana opcja maksymalnego bezpieczeństwa.
Komponenty, które uległy awarii po uaktualnieniu
Jeśli składniki replikacji zawodzą po aktualizacji, nadal można skonfigurować wystąpienie programu SQL Server tak, aby używało publicznego certyfikatu komercyjnego lub certyfikatu z wewnętrznego urzędu certyfikacji.
Alternatywnie możesz wybrać mniej bezpieczną opcję, aby zastąpić bezpieczną wartość domyślną dostawcy OLEDB 19 i ustawić trust_distributor_certificate=yes tak, aby dystrybutor ufał certyfikatowi z podpisem własnym.
Aby zastąpić nową bezpieczną wartość domyślną, użyj procedury przechowywanej sp_changedistributor_property, aby ustawić opcję trust_distributor_certificate na yes:
EXECUTE sp_changedistributor_property
@property = N'trust_distributor_certificate',
@value = N'yes';
Uwaga / Notatka
Bezpieczne wartości domyślne odnoszą się do bazowego dostawcy OLEDB 19, co zwiększa bezpieczeństwo. Opcja zastąpienia wartości domyślnej jest mniej bezpieczna niż konfigurowanie wystąpienia do używania zaufanego certyfikatu. Po zastąpieniu wartości domyślnej możesz skonfigurować program SQL Server do używania certyfikatu, a następnie użyć procedury składowanej sp_changedistributor_property , aby ustawić trust_distributor_certificate=no właściwość z powrotem na bezpieczną wartość domyślną.
Dodawanie dystrybutora replikacji zdalnej kończy się niepowodzeniem
Program SQL Server 2025 (17.x) zawiera zmiany w szyfrowaniu, które wprowadzają niekompatybilną zmianę w przypadku replikacji transakcyjnej, typu migawka, równorzędnej i scalającej.
Podczas konfigurowania dystrybutora na potrzeby replikacji procedura składowana sp_adddistributor kończy się niepowodzeniem, gdy:
- Wydawca jest wystąpieniem programu SQL Server 2025 (17.x).
- Dystrybutor jest zdalny.
- Dystrybutor nie jest skonfigurowany z zaufanym certyfikatem.
Podczas uruchamiania sp_adddistributor w wystąpieniu wydawcy może zostać wyświetlony następujący błąd:
OLE DB provider "MSOLEDBSQL19" for linked server "repl_distributor" returned message
"Client unable to establish connection".
Msg -2146893019, Level 16, State 1, Line 21
SSL Provider: The certificate chain was issued by an authority that is not trusted.
Dystrybutor zdalny używa serwera połączonego do komunikacji między wydawcą a dystrybutorem. Bezpieczne ustawienie domyślne wprowadzone w programie SQL Server 2025 (17.x) dostawcy OLEDB 19 wymaga tego.TrustServerCertificate=False
Aby rozwiązać ten problem, skonfiguruj wystąpienie programu SQL Server dystrybutora do używania publicznego certyfikatu komercyjnego lub certyfikatu z wewnętrznego urzędu certyfikacji.
Alternatywnie możesz wybrać mniej bezpieczną opcję, aby zastąpić bezpieczną wartość domyślną dostawcy OLEDB 19 i ustawić TrustServerCertificate=True tak, aby dystrybutor ufał certyfikatowi z podpisem własnym. Aby zastąpić wartość domyślną, użyj parametru trust_distributor_certificate podczas wywoływania sp_adddistributor procedury składowanej:
EXECUTE sys.sp_adddistributor @trust_distributor_certificate = 'yes';
Uwaga / Notatka
Bezpieczne wartości domyślne odnoszą się do bazowego dostawcy OLEDB 19, co zwiększa bezpieczeństwo. Opcja zastąpienia wartości domyślnej jest mniej bezpieczna niż konfigurowanie wystąpienia do używania zaufanego certyfikatu. Po zastąpieniu wartości domyślnej możesz skonfigurować program SQL Server do używania certyfikatu, a następnie użyć procedury składowanej sp_changedistributor_property , aby ustawić trust_distributor_certificate=no właściwość z powrotem na bezpieczną wartość domyślną.
Zdalne monitorowanie wysyłania dzienników może ulec awarii
Program SQL Server 2025 (17.x) zawiera zmiany szyfrowania , które wprowadzają zmianę powodującą niezgodność w przypadku wysyłania dziennika. Te problemy mogą wystąpić podczas uaktualniania.
Monitorowanie wysyłki dzienników może zostać przerwane, jeśli monitor jest zdalnym wystąpieniem programu SQL Server 2025 (17.x), gdy inne wystąpienia programu SQL Server w topologii wysyłki dzienników używają poprzedniej wersji.
Aby uzyskać informacje o bezpiecznym nawiązywaniu połączenia z instancjami SQL Server 2025 (17.x), zobacz TDS 8.0.
Full-Text zapytania i populacje kończą się niepowodzeniem po uaktualnieniu
Program SQL Server 2025 (17.x) usuwa wszystkie starsze segregatory wyrazów i filtry, używane przez usługę Full-Text Search. Te składniki są przebudowane przy użyciu nowoczesnego zestawu narzędzi i oferują rozszerzoną obsługę większej liczby języków i typów dokumentów. Istniejące indeksy po uaktualnieniu są oznaczone jako index_version = 1 zgodnie z sys.fulltext_indexes. Nowo utworzone indeksy są oznaczone jako wersja 2 i używają nowych komponentów, chyba że określono inaczej przy użyciu FULLTEXT_INDEX_VERSION konfiguracji o określonym zakresie bazy danych.
Każde zapytanie w indeksie Full-Text w wersji 1 nie jest w stanie odnaleźć na dysku plików binarnych analizatora podziału wyrazów natychmiast po uaktualnieniu systemu.
Msg 30010, Level 16, State 2, Line 8
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. If recently performed in-place upgrade to SQL2025, For help please see https://aka.ms/sqlfulltext.
Podobnie każda populacja Full-Text utworzona w indeksie w wersji 1 nie może odnaleźć binarnych plików filtrujących na dysku po uaktualnieniu.
Warning: No appropriate filter was found during full-text index population for table or indexed view '[db].[dbo].[table_name]' (table or indexed view ID '901578250', database ID '5'), full-text key value '1'. Some columns of the row were not indexed.
Ponowne kompilowanie istniejących indeksów przy użyciu nowej wersji
Zalecanym sposobem kontynuowania korzystania z indeksów jest ponowne skompilowanie ich przy użyciu nowszych składników w wersji 2.
-- Verify value = 2
SELECT *
FROM sys.database_scoped_configurations
WHERE [name] = 'FULLTEXT_INDEX_VERSION';
-- Per catalog upgrade
ALTER FULLTEXT CATALOG [FtCatalog] REBUILD;
Jedyną metodą uaktualniania poszczególnych indeksów bez ponownego kompilowania całego wykazu jest usunięcie i ponowne utworzenie ich.
Zachowaj użycie wersji 1
Jeśli konieczne jest zachowanie zgodności aplikacji w wersji 1, najpierw upewnij się, że ustawiono FULLTEXT_INDEX_VERSION wartość = 1, aby uniknąć niezamierzonego uaktualnienia podczas ponownej kompilacji.
ALTER DATABASE SCOPED CONFIGURATION
SET FULLTEXT_INDEX_VERSION = 1;
Następnie należy skopiować starsze moduły podziału wyrazów i filtry binarne ze starszego wystąpienia do folderu docelowego wystąpienia binn.