Поделиться через


Параметр воспроизведения (средство администрирования распределенного воспроизведения)

Область применения: SQL Server 2016 (13.x), SQL Server 2017 (14.x) и SQL Server 2019 (15.x)

Внимание

SQL Server распределенное воспроизведение недоступна в SQL Server 2022 (16.x).

Средство администрирования microsoft SQL Server распределенное воспроизведение, DReplay.exe, — это средство командной строки, которое можно использовать для взаимодействия с контроллером распределенного воспроизведения. В этом разделе описываются параметр командной строки replay и соответствующий синтаксис.

Параметр replay инициирует стадию воспроизведения события, на которой контроллер отправляет данные воспроизведения указанным клиентам, запускает распределенное воспроизведение и синхронизирует клиенты. При необходимости каждый клиент, участвующий в воспроизведении, может записывать последовательность воспроизведения и сохранять получившиеся файлы трассировки в локальном кэше.

Дополнительные сведения о соглашениях синтаксиса, используемых с синтаксисом средства администрирования, см . в соглашениях о синтаксисе Transact-SQL.

Синтаксис


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

Параметры

-m контроллер
Задает имя компьютера для контроллера. Локальный компьютер можно указать как «localhost» или «.».

Если параметр -m не задан, то используется локальный компьютер.

-d рабочий_каталог_контроллера
Указывает каталог на контроллере, где будет сохранен промежуточный файл. Параметр -d является обязательным.

К нему предъявляются следующие требования.

  • Каталог должен находиться на контроллере.

  • Необходимо указать полный путь, начиная с буквы диска (например, c:\WorkingDir).

  • Путь не должен завершаться обратной косой чертой «\».

  • UNC-пути не поддерживаются.

-o
Отслеживает действие воспроизведения клиента и сохраняет его в итоговом файле трассировки в каталоге, указанном элементом <ResultDirectory> в файле конфигурации клиента DReplayClient.xml.

Если параметр -o не задан, результирующий файл трассировки не создается. В конце воспроизведения консоль возвращает сводные данные, но остальная статистика воспроизведения недоступна.

-s целевой_сервер
Указывает целевой экземпляр SQL Server, в котором должна воспроизводиться распределенная рабочая нагрузка. Этот параметр необходимо задать в формате имя_сервера[\имя_экземпляра].

Недопустимо использовать в качестве целевого сервера "localhost" или ".".

Параметр -s не является обязательным, если элемент <Server> задан в секции <ReplayOptions> файла конфигурации воспроизведения DReplay.exe.replay.config.

Если используется параметр -s , элемент <Server> в секции <ReplayOptions> файла конфигурации воспроизведения будет игнорироваться.

-w клиенты
Требуемым параметром является список с разделителями-запятыми (без пробелов), содержащий имена компьютеров клиентов, которые должны участвовать в распределенном воспроизведении. IP-адреса запрещены. Помните, что клиенты должны быть уже зарегистрированы на контроллере.

Примечание.

Каждый клиент регистрируется на контроллере, который указывается в файле конфигурации клиента при запуске службы клиента.

-c файл_конфигурации
Полный путь к файлу конфигурации воспроизведения; используется для указания расположения, если оно отличается от расположения по умолчанию.

Параметр -c не является обязательным, если будут использоваться значения по умолчанию файла конфигурации воспроизведения DReplay.exe.replay.config.

-f status_interval
Указывает частоту (в секундах) отображения состояния.

Если параметр -f не задан, интервал по умолчанию составляет 30 секунд.

Примеры

В данном примере распределенное воспроизведение наследует большую часть своего поведения из измененного файла конфигурации воспроизведения DReplay.exe.replay.config.

  • Параметр -m указывает, что в качестве контроллера выступает компьютер controller1 . Имя компьютера нужно указывать, если служба контроллера работает на другом компьютере.

  • Параметр -d указывает расположение промежуточного файла c:\WorkingDirна контроллере.

  • Параметр -o указывает, что каждый заданный клиент регистрирует действие воспроизведения и сохраняет его в результирующем файле трассировки. Примечание. С помощью элемента <ResultTrace> файла конфигурации можно указать, следует ли записывать количество строк и результирующий набор.

  • Параметр -w указывает, что компьютеры client1client4 являются клиентами распределенного воспроизведения.

  • Параметр -c указывает на измененный файл конфигурации DReplay.exe.replay.config.

  • Параметр -s не является обязательным, потому что элемент <Server> задан в элементе <ReplayOptions> файла конфигурации воспроизведения DReplay.exe.replay.config.

Этап воспроизведения событий инициируется следующим синтаксисом, когда средство администрирования запускается не на контроллере:

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

Чтобы установить синхронный режим последовательного выполнения, элементу <SequencingMode> в файле DReplay.exe.replay.config нужно присвоить значение synchronization. Раздел <ResultTrace> файла конфигурации воспроизведения изменен для указания записи количества строк. Эти изменения показаны в следующем примере 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> 

Чтобы установить режим нагрузки последовательного выполнения, элементу <SequencingMode> в файле DReplay.exe.replay.config нужно присвоить значение stress. Элементам <ConnectTimeScale> и <ThinkTimeScale> присваивается значение 50 (что означает 50 процентов). Дополнительные сведения о времени соединения и времени обработки см. в разделе Настройка распределенного воспроизведения. Эти изменения показаны в следующем примере 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> 

Разрешения

Средство администрирования должно запускаться как интерактивный пользователь, с учетной записью локального пользователя или пользователя домена. Для использования учетной записи локального пользователя средство администрирования и контроллер должны быть запущены на одном компьютере.

Дополнительные сведения см. в статье Distributed Replay Security.

См. также