云数据库 RDS-使用DAS在RDS for SQL Server主备实例上分别创建和配置Agent Job和Dblink:创建JOB同步备库

时间:2023-12-18 10:59:37

创建JOB同步备库

  1. 在主节点创建job。

    在DAS管理页面,操作栏单击“SQL查询”,在msdb库下,执行创建job命令。

    如果在主机通过其他方式已经有job创建不执行此步骤。

    USE [msdb]
    GO
    DECLARE @jobId BINARY(16)
    EXEC  msdb.dbo.sp_add_job @job_name=N'hwtest', 
                       @enabled=1, 
                       @notify_level_eventlog=0, 
                       @notify_level_email=2, 
                       @notify_level_page=2, 
                       @delete_level=0, 
                       @category_name=N'[Uncategorized (Local)]', 
                       @owner_login_name=N'rdsuser', @job_id = @jobId OUTPUT
    select @jobId
    GO
    EXEC msdb.dbo.sp_add_jobserver @job_name=N'hwtest', @server_name = N'*******'
    GO
    USE [msdb]
    GO
    EXEC msdb.dbo.sp_add_jobstep @job_name=N'hwtest', @step_name=N'select orders', 
                       @step_id=1, 
                       @cmdexec_success_code=0, 
                       @on_success_action=1, 
                       @on_fail_action=2, 
                       @retry_attempts=0, 
                       @retry_interval=0, 
                       @os_run_priority=0, @subsystem=N'TSQL', 
                       @command=N'select * from orders;', 
                       @database_name=N'test', 
                       @flags=0
    GO
    USE [msdb]
    GO
    EXEC msdb.dbo.sp_update_job @job_name=N'hwtest', 
                       @enabled=1, 
                       @start_step_id=1, 
                       @notify_level_eventlog=0, 
                       @notify_level_email=2, 
                       @notify_level_page=2, 
                       @delete_level=0, 
                       @description=N'', 
                       @category_name=N'[Uncategorized (Local)]', 
                       @owner_login_name=N'zf1', 
                       @notify_email_operator_name=N'', 
                       @notify_page_operator_name=N''
    GO

    使用如下SQL查询job是否被创建。

    use [msdb]

    select * from msdb.dbo.sysjobs where name ='hwtest';

  2. 切换到备库。

    目前云数据库 RDS for SQL Server实例暂不支持主备库job同步,因此需要在备库同步执行job创建,同步job。在在主节点创建job中,我们处于主库,单击主库旁的“切换SQL执行点”,即可切换到备库。

  3. 使用在主节点创建job的语句在备库上创建job。

    通过SQL Server Management Studio(简称:S SMS )工具导出之前创建的job到编辑窗,并复制到DAS的SQL查询窗口,执行sql即可。

    若创建失败,建议先进行delete job操作后,再重新执行创建job。

    图1 导出job
    图2 在DAS管理界面备库界面执行创建job

    使用如下SQL删除job命令。

    USE [msdb]

    GO

    EXEC msdb.dbo.sp_delete_job @job_name=N'hwtest', @delete_unused_schedule=1

    GO

support.huaweicloud.com/bestpractice-rds/rds_04_0023.html