Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
van toepassing op: SQL Server 2016 (13.x),
SQL Server 2017 (14.x) en
SQL Server 2019 (15.x)
Belangrijk
SQL Server Distributed Replay is niet beschikbaar met SQL Server 2022 (16.x).
Het microsoft SQL Server Distributed Replay-beheerprogramma, DReplay.exe, is een opdrachtregelprogramma dat u kunt gebruiken om te communiceren met de gedistribueerde herplaycontroller. In dit onderwerp worden de opdrachtregeloptie en de bijbehorende syntaxis beschreven.
Met de optie opnieuw afspelen wordt de fase voor het opnieuw afspelen van gebeurtenissen gestart, waarin de controller opnieuw afspeelgegevens naar de opgegeven clients verzendt, de gedistribueerde herhaling start en de clients synchroniseert. Optioneel kan elke client die deelneemt aan de herhalingsactiviteit de herhalingsactiviteit opnemen en lokaal een resultaattraceringsbestand opslaan.
Zie Transact-SQL syntaxisconventiesvoor meer informatie over de syntaxisconventies die worden gebruikt met de syntaxis van het beheerprogramma.
Syntaxis
dreplay replay [-m controller] -d controller_working_dir [-o]
[-s target_server] -w clients [-c config_file]
[-f status_interval]
Parameters
-mregelaar
Hiermee geeft u de computernaam van de controller. U kunt 'localhost
' of '.
' gebruiken om naar de lokale computer te verwijzen.
Als de parameter -m niet is opgegeven, wordt de lokale computer gebruikt.
-dcontroller_working_dir
U specificeert de directory op de controller waarop het tussenliggende bestand wordt opgeslagen. De parameter -d is vereist.
De volgende vereisten zijn van toepassing:
De map moet zich op de controller bevinden.
U moet het volledige pad opgeven, te beginnen met een schijfletter (bijvoorbeeld
c:\WorkingDir
).Het pad mag niet eindigen met een backslash "
\
".UNC-paden worden niet ondersteund.
-o
Legt de herhalingsactiviteit van de clients vast en slaat deze op in een resultaattraceringsbestand in het pad dat is opgegeven door het <ResultDirectory>
-element in het clientconfiguratiebestand, DReplayClient.xml
.
Wanneer de parameter -o niet is opgegeven, wordt het resultaattraceringsbestand niet gegenereerd. De console-uitvoer retourneert samenvattingsgegevens aan het einde van de herhaling, maar er zijn geen andere statistieken voor opnieuw afspelen beschikbaar.
-sdoelserver
Hiermee geeft u het doelexemplaar van SQL Server op waarop de gedistribueerde workload opnieuw moet worden afgespeeld. Het is noodzakelijk dat u deze parameter opgeeft in het formaat server_name[\exemplaarnaam].
U kunt 'localhost
' of '.
' niet gebruiken als doelserver.
De -s-parameter is niet vereist als het <Server>
element is opgegeven in de sectie <ReplayOptions>
van het configuratiebestand voor opnieuw afspelen, DReplay.exe.replay.config
.
Als de parameter -s wordt gebruikt, wordt het <Server>
element in de sectie <ReplayOptions>
van het configuratiebestand voor opnieuw afspelen genegeerd.
-wklanten
Deze vereiste parameter is een door komma's gescheiden lijst (zonder spaties) die de computernamen van clients aangeeft die moeten deelnemen aan de gedistribueerde herhaling. IP-adressen zijn niet toegestaan. Houd er rekening mee dat de clients al moeten worden geregistreerd bij de controller.
Notitie
Elke client registreert zich bij de controller die is opgegeven in het clientconfiguratiebestand wanneer de clientservice wordt gestart.
-cconfig_file
Is het volledige pad van het configuratiebestand voor opnieuw afspelen; wordt gebruikt om de locatie op te geven wanneer deze op een andere locatie wordt opgeslagen.
De parameter -c is niet vereist als u de standaardwaarden van het configuratiebestand voor opnieuw afspelen wilt gebruiken, DReplay.exe.replay.config
.
-fstatus_interval
Hiermee geeft u de frequentie (in seconden) waarop de status moet worden weergegeven.
Als -f niet is opgegeven, is het standaardinterval 30 seconden.
Voorbeelden
In dit voorbeeld leidt de gedistribueerde replay veel van zijn gedrag af van een aangepast replayconfiguratiebestand, DReplay.exe.replay.config
.
De parameter -m geeft aan dat een computer met de naam
controller1
fungeert als de controller. De computernaam moet worden opgegeven wanneer de controllerservice wordt uitgevoerd op een andere computer.De parameter -d geeft de locatie van het tussenliggende bestand op de controller aan,
c:\WorkingDir
.De parameter -o geeft aan dat elke opgegeven client de herhalingsactiviteit vastlegt en opslaat in een resultaattraceringsbestand. Opmerking: het element
<ResultTrace>
in het configuratiebestand kan worden gebruikt om op te geven of het aantal rijen en de resultatenset moet worden vastgelegd.De parameter -w geeft aan dat computers
client1
viaclient4
deelnemen als clients in de gedistribueerde herhaling.De parameter -c wordt gebruikt om te verwijzen naar het gewijzigde configuratiebestand,
DReplay.exe.replay.config
.De parameter -s is niet vereist omdat het
<Server>
element is opgegeven in het<ReplayOptions>
element van het configuratiebestand voor opnieuw afspelen,DReplay.exe.replay.config
.
De fase voor het opnieuw afspelen van gebeurtenissen wordt gestart met de volgende syntaxis, wanneer het beheerprogramma wordt uitgevoerd vanaf een andere computer dan de controller:
dreplay replay -m controller1 -d c:\WorkingDir -o -w client1,client2,client3,client4 -c c:\DReplay.exe.replay.config
Als u een synchrone sequentiëringsmodus wilt opgeven, wordt het <SequencingMode>
element van het DReplay.exe.replay.config
-bestand ingesteld op de waarde synchronization
. De <ResultTrace>
sectie van het configuratiebestand voor opnieuw afspelen wordt gewijzigd om op te geven dat het aantal rijen wordt vastgelegd. Deze wijzigingen worden weergegeven in het volgende XML-voorbeeld:
<?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>
Als u een stressvolgordemodus wilt opgeven, wordt het <SequencingMode>
element van het bestand DReplay.exe.replay.config
ingesteld op de waarde stress
. De <ConnectTimeScale>
- en <ThinkTimeScale>
-elementen worden ingesteld op de waarde 50
(om 50 procent op te geven). Voor meer informatie over verbindingstijd en denktijd, zie Gedistribueerde herhaling configureren. Deze wijzigingen worden weergegeven in het volgende XML-voorbeeld:
<?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>
Machtigingen
U moet het beheerprogramma uitvoeren als een interactieve gebruiker, als een lokale gebruiker of een domeingebruikersaccount. Als u een lokaal gebruikersaccount wilt gebruiken, moeten het beheerprogramma en de controller op dezelfde computer worden uitgevoerd.
Zie Distributed Replay Securityvoor meer informatie.
Zie ook
- Traceringsgegevens opnieuw afspelen
- De resultaten van het opnieuw afspelen beoordelen
- gedistribueerde herhaling van SQL Server-
- Gedistribueerde herhaling configureren
- Gedistribueerde herhaling gebruiken om uw SQL-server te testen - deel 2
- Distributed Replay gebruiken om een belastingstest uit te voeren op uw SQL Server - deel 1