MSSQLSERVER_18483

Dotyczy:SQL Server

Szczegóły

Attribute Value
Nazwa produktu SQL Server
Identyfikator zdarzenia 18483
Źródło zdarzenia MSSQLSERVER
Składnik SQLEngine
Nazwa symboliczna REMLOGIN_INVALID_USER
Tekst wiadomości Nie można połączyć się z serwerem '%.ls', ponieważ '%.ls' nie jest definiowane jako zdalne logowanie na serwerze. Sprawdź, czy określono poprawną nazwę logowania. %.*ls.

Explanation

Ten błąd pojawia się, gdy próbujesz skonfigurować rozdzielacz replikacji na systemie, który został przywrócony na podstawie obrazu dysku twardego innego komputera, na którym oryginalnie zainstalowano instancję SQL. Użytkownik zgłasza komunikat o błędzie podobny do następujących:

SQL Server Management Studio nie mógł skonfigurować<><serwer instance>' jako dystrybutor dla '><<serwerowej instancji>'. Błąd 18483: Nie udało się połączyć z serwerem '<><Server Instance>', ponieważ 'distributor_admin' nie jest zdefiniowane jako zdalne logowanie na serwerze. Sprawdź, czy określono poprawną nazwę logowania. %.*ls.

Przyczyna

Gdy wdrażasz SQL Server z obrazu dysku twardego innego komputera, na którym zainstalowany jest SQL Server, nazwa sieci komputera z obrazem pozostaje zachowywana w nowej instalacji. Nieprawidłowa nazwa sieci powoduje awarię konfiguracji rozdzielacza replikacyjnego. Ten sam problem pojawia się, gdy zmienisz nazwę komputera po zainstalowaniu SQL Server.

Akcja użytkownika

Aby obejść ten problem, zamień nazwę serwera SQL Server na poprawną nazwę sieci komputera. W tym celu wykonaj następujące kroki:

  1. Zaloguj się na komputer, na którym wdrożyłeś SQL Server z obrazu dysku, a następnie wykonaj następujące Transact-SQL w SSMS:

    -- Use the Master database
    USE master
    GO
    
    -- Declare local variables
    DECLARE @serverproperty_servername varchar(100),
    @servername varchar(100);
    
    -- Get the value returned by the SERVERPROPERTY system function
    SELECT @serverproperty_servername = CONVERT(varchar(100), SERVERPROPERTY('ServerName'));
    
    -- Get the value returned by @@SERVERNAME global variable
    SELECT @servername = CONVERT(varchar(100), @@SERVERNAME);
    
    -- Drop the server with incorrect name
    EXEC sp_dropserver @server=@servername;
    
    -- Add the correct server as a local server
    EXEC sp_addserver @server=@serverproperty_servername, @local='local';
    
  2. Zrestartuj komputer z SQL Server.

  3. Aby zweryfikować, że nazwa SQL Server i nazwa sieci komputera są takie same, wykonaj następujące Transact-SQL instrukcje:

    SELECT @@SERVERNAME, SERVERPROPERTY('ServerName');
    

Więcej informacji

Możesz użyć @@SERVERNAME zmiennej globalnej lub SERVERPROPERTYfunkcji ('ServerName') w SQL Server, aby znaleźć nazwę sieci komputera działającego na SQL Server. Właściwość SERVERPROPERTY ServerName funkcji automatycznie raportuje zmianę nazwy sieci komputera po ponownym uruchomieniu komputera i usługi SQL Server. Zmienna globalna zachowuje @@SERVERNAME oryginalną nazwę komputera SQL Server do czasu ręcznego zresetowania nazwy SQL Server.

Kroki umożliwiające odtworzenie problemu

Na komputerze, na którym wdrożyłeś SQL Server z obrazu dysku, postępuj zgodnie z następującymi krokami:

  1. Start Management Studio.

  2. W Eksplorator obiektów rozwiń nazwę instancji SQL Server.

  3. Kliknij prawym przyciskiem myszy na folder Replikacja i kliknij Konfiguruj replikację dystrybucji, a następnie kliknij Konfiguruj publikację, Subskrybentów i Dystrybucję.

  4. W oknie dialogowym Konfiguruj Kreator dystrybucji kliknij Następny.

  5. W oknie dialogowym Dystrybutor kliknij, aby wybrać '<Instancję>Serwera><', która będzie działać jako własny Dystrybutor; SQL Server utworzy bazę danych dystrybucji i przycisk logradio, a następnie kliknie Dalej.

  6. W oknie dialogowym SQL Server Agent Start kliknij Następny.

  7. W oknie dialogowym Folder Snapshot kliknij Następne.

    Uwaga / Notatka

    Jeśli otrzymasz wiadomość potwierdzającą ścieżkę folderu snapshot, kliknij Tak.

  8. W oknie dialogowym Distribution Database kliknij Następne.

  9. W oknie dialogowym Wydawcy kliknij Następne.

  10. W oknie dialogowym Akcje Czarodzieja kliknij Następne.

  11. W oknie dialogowym Ukończ Czarodzieja kliknij Zakończ.