Udostępnij za pośrednictwem


Opcja odtwarzania (rozproszone narzędzie administracji powtarzania)

Dotyczy: SQL Server 2016 (13.x), SQL Server 2017 (14.x) i SQL Server 2019 (15.x)

Ważny

Rozproszone odtwarzanie programu SQL Server nie jest dostępne w programie SQL Server 2022 (16.x).

Narzędzie administracyjne do rozproszonego odtwarzania w Microsoft SQL Server, DReplay.exe, to narzędzie wiersza polecenia, za pomocą którego można komunikować się z kontrolerem rozproszonego odtwarzania. W tym temacie opisano opcję wiersza poleceń replay oraz odpowiadającą jej składnię.

Opcja odtwarzania inicjuje etap odtwarzania zdarzeń, w którym kontroler wysyła dane odtwarzania do określonych klientów, uruchamia rozproszoną powtórkę i synchronizuje klientów. Opcjonalnie każdy klient biorący udział w odtwarzaniu może rejestrować działanie odtwarzania i zapisywać plik śledzenia wyników lokalnie.

Aby uzyskać więcej informacji na temat konwencji składniowych narzędzia administracyjnego, zobacz Transact-SQL konwencje składni.

Składnia


dreplay replay [-m controller] -d controller_working_dir [-o]  
    [-s target_server] -w clients [-c config_file]  
    [-f status_interval]  

Parametry

Kontroler -m
Określa nazwę komputera kontrolera. Aby odwołać się do komputera lokalnego, możesz użyć polecenia "localhost" lub ".".

Jeśli nie określono parametru -m, używany jest komputer lokalny.

-dcontroller_working_dir
Określa katalog na kontrolerze, w którym będzie przechowywany plik pośredni. Wymagany jest parametr -d.

Obowiązują następujące wymagania:

  • Katalog musi znajdować się na kontrolerze.

  • Musisz określić pełną ścieżkę, zaczynając od litery dysku (na przykład c:\WorkingDir).

  • Ścieżka nie może kończyć się ukośnikiem odwrotnym "\".

  • Ścieżki UNC nie są obsługiwane.

-o
Przechwytuje aktywność odtwarzania klientów i zapisuje ją w pliku śledzenia wyników w ścieżce określonej przez elementu <ResultDirectory> w pliku konfiguracji klienta, DReplayClient.xml.

Jeśli nie określono parametru -o, plik śledzenia wyników nie jest generowany. Dane wyjściowe konsoli zwracają informacje podsumowania na końcu odtwarzania, ale nie są dostępne żadne inne statystyki odtwarzania.

-starget_server
Określa docelowe wystąpienie programu SQL Server, względem którego powinno być odtwarzane obciążenie rozproszone. Należy określić ten parametr w formacie server_name[\nazwa wystąpienia].

Nie można użyć "localhost" lub "." jako serwera docelowego.

Parametr -s nie jest wymagany, jeśli element <Server> jest określony w sekcji <ReplayOptions> pliku konfiguracji odtwarzania, DReplay.exe.replay.config.

Jeśli jest używany parametr -s, element <Server> w sekcji <ReplayOptions> pliku konfiguracji odtwarzania zostanie zignorowany.

-wklienci
Ten wymagany parametr jest rozdzielaną przecinkami listą (bez spacji), która określa nazwy komputerów klientów, którzy powinni uczestniczyć w rozproszonym odtwarzaniu. Adresy IP nie są dozwolone. Należy pamiętać, że klienci muszą być już zarejestrowani w kontrolerze.

Notatka

Każdy klient rejestruje się w kontrolerze określonym w pliku konfiguracji klienta po uruchomieniu usługi klienta.

-cconfig_file
Jest pełną ścieżką pliku konfiguracji odtwarzania; służy do określania lokalizacji, gdy jest ona przechowywana w innej lokalizacji.

Parametr -c nie jest wymagany, jeśli chcesz użyć wartości domyślnych pliku konfiguracji odtwarzania, DReplay.exe.replay.config.

-fstatus_interval
Określa częstotliwość (w sekundach), z jaką ma być wyświetlany stan.

Jeśli nie określono -f, domyślny interwał wynosi 30 sekund.

Przykłady

W tym przykładzie rozproszona powtórka czerpie większość swojego działania z zmodyfikowanego pliku konfiguracji, DReplay.exe.replay.config.

  • Parametr -m określa, że komputer o nazwie controller1 działa jako kontroler. Nazwa komputera musi być określona, gdy usługa kontrolera jest uruchomiona na innym komputerze.

  • Parametr -d określa lokalizację pliku pośredniego na kontrolerze, c:\WorkingDir.

  • Parametr -o określa, że każdy określony klient przechwytuje działania odtwarzania i zapisuje je w pliku śledzenia wyników. Uwaga: element <ResultTrace> w pliku konfiguracji może służyć do określenia, czy liczba wierszy i zestaw wyników mają być rejestrowane.

  • Parametr -w określa, że komputery od client1 do client4 uczestniczą jako klienci w rozproszonym odtwarzaniu.

  • Parametr -c służy do wskazywania zmodyfikowanego pliku konfiguracji DReplay.exe.replay.config.

  • Parametr -s nie jest wymagany, ponieważ element <Server> jest określony w <ReplayOptions> elementu pliku konfiguracji odtwarzania, DReplay.exe.replay.config.

Etap odtwarzania zdarzenia jest inicjowany przy użyciu następującej składni, gdy narzędzie administracyjne jest uruchamiane z innego komputera niż kontroler:

dreplay replay -m controller1 -d c:\WorkingDir -o -w client1,client2,client3,client4 -c c:\DReplay.exe.replay.config  

Aby określić tryb sekwencjonowania synchronicznego, element <SequencingMode> pliku DReplay.exe.replay.config jest ustawiony na wartość synchronization. Sekcja <ResultTrace> pliku konfiguracji odtwarzania jest modyfikowana w celu określenia liczby wierszy do zanotowania. Te zmiany są wyświetlane w poniższym przykładzie XML:

<?xml version='1.0'?> 
<Options> 
    <ReplayOptions> 
        <Server>server_name\replay_target_instance</Server> 
        <SequencingMode>synchronization</SequencingMode> 
        <ConnectTimeScale></ConnectTimeScale> 
        <ThinkTimeScale></ThinkTimeScale> 
        <HealthmonInterval>60</HealthmonInterval> 
        <QueryTimeout>3600</QueryTimeout> 
        <ThreadsPerClient></ThreadsPerClient> 
    </ReplayOptions> 
    <OutputOptions> 
        <ResultTrace> 
            <RecordRowCount>Yes</RecordRowCount> 
            <RecordResultSet>No</RecordResultSet> 
        </ResultTrace> 
    </OutputOptions> 
</Options> 

Aby określić tryb sekwencjonowania obciążenia, element <SequencingMode> pliku DReplay.exe.replay.config jest ustawiony na wartość stress. Elementy <ConnectTimeScale> i <ThinkTimeScale> są ustawione na wartość 50 (aby określić 50 procent). Aby uzyskać więcej informacji na temat czasu połączenia i czasu myślenia, zobacz Configure Distributed Replay. Te zmiany są wyświetlane w poniższym przykładzie XML:

<?xml version='1.0'?> 
<Options> 
    <ReplayOptions> 
        <Server>server_name\replay_target_instance_name</Server> 
        <SequencingMode>stress</SequencingMode> 
        <ConnectTimeScale>50</ConnectTimeScale> 
        <ThinkTimeScale>50</ThinkTimeScale> 
        <HealthmonInterval>60</HealthmonInterval> 
        <QueryTimeout>3600</QueryTimeout> 
        <ThreadsPerClient></ThreadsPerClient> 
    </ReplayOptions> 
    <OutputOptions> 
        <ResultTrace> 
            <RecordRowCount>Yes</RecordRowCount> 
            <RecordResultSet>No</RecordResultSet> 
        </ResultTrace> 
    </OutputOptions> 
</Options> 

Uprawnienia

Musisz uruchomić narzędzie administracyjne jako użytkownik interaktywny, jako użytkownik lokalny lub konto użytkownika domeny. Aby użyć konta użytkownika lokalnego, narzędzie administracyjne i kontroler muszą być uruchomione na tym samym komputerze.

Aby uzyskać więcej informacji, zobacz Distributed Replay Security.

Zobacz też