Simptome
Să presupunem că creați o publicație tranzacțională utilizând sp_addpublication procedură stocată în SQL Server 2014 sau 2016 și setați proprietatea @allow_drop la True. După ce fixați un tabel publicat în publicație și eliminați manual articolul învechit din publicație, este posibil să primiți un mesaj de eroare asemănător cu următorul:
Serverul la distanță "(NULL)" nu există.
De exemplu, această problemă apare în următorul scenariu:
-
Publicați un tabel într-o publicație tranzacțională, apoi setați proprietatea @allow_drop la True.
-
Eliminați tabelul publicat.
-
Înainte ca agentul de cititor de jurnal să proceseze înregistrările care sunt asociate comenzii drop table, curățați articolul învechit utilizând una dintre următoarele proceduri stocate:
-
sp_MSdropobsoletearticle
-
sp_droparticle
-
sp_droppublication
-
În acest caz, se înregistrează următoarele mesaje de eroare într-un jurnal detaliat:
Stare: 0, cod: 1007, text: ' procesul nu a putut fi executat ' sp_MSadd_replcmds ' pe 'SQL_SERVER_INSTANCE'. '. Procesul nu a putut executa ' sp_MSadd_replcmds ' pe 'SQL_SERVER_INSTANCE'. Stare agent Repl: 6Status: 0, cod: 1007, text: "serverul la distanță" (NULL) "nu există sau nu a fost desemnat ca editor valid sau este posibil să nu aveți permisiunea de a vedea editori disponibili.". Stare: 4, cod: 6001, text: ' firul de fundal pentru ' încărcător de comandă ' se închide. '. Stare: 0, cod: 22020, text: "loturile nu au fost dedicate distribuitorului.". Stare: 0, cod: 22037, text: "ultimul pas nu a înregistrat niciun mesaj!".
Notă Suportul fixare tabel (DROP tabel DDL) a fost adăugat în SQL Server 2014 Service Pack 2. Pentru informații despre suportul fixare tabel, consultați următorul articol din baza de cunoștințe Microsoft:
3170123 Suportă DROP tabel DDL pentru articolele care sunt incluse în reproducerea tranzacțională în SQL Server 2014
Rezolvare
Această problemă este remediată în următoarele actualizări cumulative pentru SQL Server:
Actualizarea cumulativă 1 pentru SQL server 2014 Service Pack 2actualizarea cumulativă 2 pentru SQL Server 2016
Fiecare nouă actualizare cumulativă pentru SQL Server conține toate remedierile rapide și toate remedierile de securitate care au fost incluse în actualizarea cumulativă anterioară. Consultați cele mai recente actualizări cumulative pentru SQL Server:
Cea mai recentă actualizare cumulativă pentru SQL server 2014 Cea mai recentă actualizare cumulativă pentru SQL Server 2016
Stare
Microsoft a confirmat că aceasta este o problemă în produsele Microsoft enumerate în secțiunea „Se aplică la”.
Referințe
Aflați despre terminologia pe care o utilizează Microsoft pentru a descrie actualizările de software.