Загрузка данных


SELECT
    servicename,
    status_desc,
    startup_type_desc,
    last_startup_time
FROM sys.dm_server_services
WHERE servicename LIKE N'SQL Server Agent%';

USE msdb;
GO

SELECT
    j.job_id,
    j.name AS jobName,
    c.name AS categoryName,
    j.enabled,
    ja.start_execution_date,
    ja.stop_execution_date,
    CASE
        WHEN ja.start_execution_date IS NOT NULL
         AND ja.stop_execution_date IS NULL
            THEN N'RUNNING'
        ELSE N'NOT RUNNING'
    END AS agentState
FROM dbo.sysjobs AS j
JOIN dbo.syscategories AS c
    ON c.category_id = j.category_id
LEFT JOIN dbo.sysjobactivity AS ja
    ON ja.job_id = j.job_id
   AND ja.session_id =
       (SELECT MAX(session_id) FROM dbo.syssessions)
WHERE c.name IN
(
    N'REPL-Distribution',
    N'REPL-LogReader',
    N'REPL-Snapshot'
)
ORDER BY c.name, j.name;

USE distribution;
GO

SELECT TOP (50)
    [time],
    error_code,
    error_text
FROM dbo.MSrepl_errors
ORDER BY [time] DESC, id DESC;

USE msdb;
GO

SELECT TOP (80)
    j.name AS jobName,
    h.step_id,
    h.step_name,
    h.run_date,
    h.run_time,
    h.run_duration,
    CASE h.run_status
        WHEN 0 THEN N'FAILED'
        WHEN 1 THEN N'SUCCEEDED'
        WHEN 2 THEN N'RETRY'
        WHEN 3 THEN N'CANCELED'
        WHEN 4 THEN N'IN PROGRESS'
    END AS runStatus,
    h.message
FROM dbo.sysjobhistory AS h
JOIN dbo.sysjobs AS j
    ON j.job_id = h.job_id
JOIN dbo.syscategories AS c
    ON c.category_id = j.category_id
WHERE c.name IN (N'REPL-Distribution', N'REPL-LogReader')
ORDER BY h.instance_id DESC;


USE msdb;
GO

EXEC dbo.sp_start_job
    @job_name = N'ТОЧНОЕ ИМЯ ЗАДАНИЯ';

EXEC msdb.dbo.sp_update_job
    @job_name = N'ТОЧНОЕ ИМЯ ЗАДАНИЯ',
    @enabled = 1;

EXEC msdb.dbo.sp_stop_job
    @job_name = N'ТОЧНОЕ ИМЯ ЗАДАНИЯ';

USE distribution;
GO

SELECT
    da.name AS agentName,
    ps.name AS publisher,
    da.publisher_db,
    da.publication,
    ss.name AS subscriber,
    da.subscriber_db,
    da.subscription_type
FROM dbo.MSdistribution_agents AS da
LEFT JOIN master.sys.servers AS ps
    ON ps.server_id = da.publisher_id
LEFT JOIN master.sys.servers AS ss
    ON ss.server_id = da.subscriber_id
WHERE da.publisher_db = N'myNewVasya'
  AND da.subscriber_db = N'replTransVas';

USE distribution;
GO

EXEC dbo.sp_replmonitorsubscriptionpendingcmds
    @publisher         = N'ИМЯ ИЗ ПОЛЯ publisher',
    @publisher_db      = N'myNewVasya',
    @publication       = N'ИМЯ ПУБЛИКАЦИИ',
    @subscriber        = N'ИМЯ ИЗ ПОЛЯ subscriber',
    @subscriber_db     = N'replTransVas',
    @subscription_type = 0; -- значение из предыдущего SELECT