实现自动备份sqlserver代理作业JOB

step1

阅读WindowShell脚本


$ServerName='XXX'
$FilePath='XX'
echo $env:COMPUTERNAME
echo  $ServerName
if(Test-Path $FilePath)
{
        #check if the instance name is available on the server
        
         [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SqlServer.Smo") |Out-Null
         $srv = New-Object ('Microsoft.SqlServer.Management.Smo.Server') $ServerName 
        if($ServerName.contains($env:COMPUTERNAME) -and ('true'))
          {
            $jobs = $srv.JobServer.Jobs | Where-Object {$_.category -notlike "*repl*" -and $_.category -notlike "*shipping*" -and $_.category -notlike "*Maintenance*" }  
  
            ForEach ( $job in $jobs) 
               {
                     $jobname = $FilePath +'\' + $job.Name.replace(" ","_").replace("\","_").replace("[","_").replace("]","_").replace(".","_").replace(":","_").replace("*","_") + ".sql" 
                     $job.Script() | Out-File $jobname 
                Write-Host 'Scripting out ' $job ' successfully!'
               }
         }
        else 
        {
         Write-Host 'The server name you entered is not available!'
       }

}
else
{
Write-Host 'The path does not exist, please retype again!'

}

step2:

  将Step1中的内容修改服务器名称及备份内容存放此路径,保存在 名称为 GetAllAgentJobs.ps1的文件

step3

将下属内容保存为批处理文件

   powershell XX/GetAllAgentJobs.ps1

step4

 新增计划任务,调用3中保存到批处理文件 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值