当前位置: 首页 > news >正文

用来代替SQLSERVERAGENT的VBS脚本。

今天一台MSSQL2000出问题,SQLSERVERAGENT服务又启不过来,胡乱撮写的一个脚本。

'*******************************************************************
' 目的:当MSSQL的SQLSERVERAGENT启不过来时,可以用这个脚本来备份全部数据库,也可以做成计划任务来执行
' 注意还原master数据库要用单用户启动MSSQL
'*******************************************************************

dim spath
spath="E:\sqldatabackup\db\" '请注意修改备份路径

dim backpath
backpath=spath & cstr(date() &  hour(now) &  minute(now) & second(now)) & "\"
deletefile(spath & "all.sql")

CreateFolderDemo()
strContent = ExportData
Call LogToFile(strContent, "all.sql")

'---------------------------------
Set shell = WScript.CreateObject("WScript.Shell")
cmd = "osql -E -i all.sql"
Shell.Run cmd, 1, True
Set shell = Nothing
'---------------------------------

'Wscript.Echo "完成!"

'新建文件夹
 Function   CreateFolderDemo()     
      Dim   fso,   f   
      Set   fso   =   CreateObject("Scripting.FileSystemObject")   
      Set   f   =   fso.CreateFolder(backpath & "")   
      CreateFolderDemo   =   f.Path 
      Set fso = Nothing  
  End   Function   

'删除文件
function deletefile(filename) 
	if filename<>"" then 
	Set fso = CreateObject("Scripting.FileSystemObject")
	if fso.FileExists(filename) then 
	fso.DeleteFile filename 
	else 
	' "<script>alert(''该文件不存在'');</script>" 
	end if 
	end if 
	Set fso = Nothing
end function 

'写文件
Function LogToFile(strContent,strFileName)
	Const ForReading = 1, ForWriting = 2,ForAppending = 8
	Dim fso, f
	Set fso = CreateObject("Scripting.FileSystemObject")
	Set f = fso.OpenTextFile(strFileName, ForAppending, True)
	f.WriteLine strContent
        Set fso = Nothing
End Function

'生成备份脚本
Function ExportData()
	Dim strConn,strSql,strData
	Dim objConn,objRs
	
	strConn = "Provider=sqloledb;Data Source=(local);Initial Catalog=master;Integrated Security=SSPI;"
	Set objConn = CreateObject("ADODB.Connection")
	objConn.Open strConn
	
	'strSql = "SELECT name,filename FROM sysdatabases"
	strSql = "SELECT name FROM sysdatabases"
	Set objRs = objConn.Execute(strSql)
	If NOT objRs.EOF Then
		While NOT objRs.EOF
	     strData = strData & "backup database [" & objRs(0).value &"] to disk='" &  backpath & objRs(0).value  & ".bak'" &  vbCrLf & "GO" & vbCrLf
		 objRs.MoveNext
		Wend
	End If
	
	If Err.Number <> 0 Then
		ExportData = Err.Description
	Else
		ExportData = strData
	End If
	objRs.Close
	objConn.Close
	Set objRs = Nothing
	Set objConn = Nothing
End Function

相关文章:

  • Windows Server 2003 DHCP 服务
  • [莓讯]blackberry潘多拉更新至1.1.3版本
  • Hadoop技术论坛
  • Delphi中怎样监视POP3信箱?
  • ubuntu的第三方站点remastersys无法访问
  • 业务系统设计之二:系统主控设计(上)
  • ROS 全自动算号器 1.1下载
  • 女性排毒养颜美容的14个技巧 - 健康程序员,至尚生活!
  • 汇编语言学习笔记-接收鼠标消息
  • IE新0day漏洞(979352)(又称极光零日漏洞)***将扩散
  • 苹果高清HD编辑系统
  • 支持firefox 3.6的onenote插件
  • 家长早放手,孩子早当家
  • CCNA笔记
  • vPower系列1: vMotion-没有vMotion,虚拟化只是玩具
  • 【跃迁之路】【669天】程序员高效学习方法论探索系列(实验阶段426-2018.12.13)...
  • AzureCon上微软宣布了哪些容器相关的重磅消息
  • ES6系列(二)变量的解构赋值
  • JavaScript DOM 10 - 滚动
  • Lsb图片隐写
  • PhantomJS 安装
  • React组件设计模式(一)
  • Redis 中的布隆过滤器
  • 从零到一:用Phaser.js写意地开发小游戏(Chapter 3 - 加载游戏资源)
  • 力扣(LeetCode)357
  • 数据科学 第 3 章 11 字符串处理
  • 算法---两个栈实现一个队列
  • 物联网链路协议
  • 鱼骨图 - 如何绘制?
  • 做一名精致的JavaScripter 01:JavaScript简介
  • 浅谈sql中的in与not in,exists与not exists的区别
  • #vue3 实现前端下载excel文件模板功能
  • (11)工业界推荐系统-小红书推荐场景及内部实践【粗排三塔模型】
  • (2)nginx 安装、启停
  • (java)关于Thread的挂起和恢复
  • (zt)最盛行的警世狂言(爆笑)
  • (附源码)springboot工单管理系统 毕业设计 964158
  • (收藏)Git和Repo扫盲——如何取得Android源代码
  • .bat批处理(一):@echo off
  • .net core 6 redis操作类
  • .NET Core 网络数据采集 -- 使用AngleSharp做html解析
  • .net core使用RPC方式进行高效的HTTP服务访问
  • .Net Web项目创建比较不错的参考文章
  • .NetCore实践篇:分布式监控Zipkin持久化之殇
  • .NET设计模式(7):创建型模式专题总结(Creational Pattern)
  • .net实现头像缩放截取功能 -----转载自accp教程网
  • /bin/bash^M: bad interpreter: No such file or directory
  • @Controller和@RestController的区别?
  • @Transactional 竟也能解决分布式事务?
  • @开发者,一文搞懂什么是 C# 计时器!
  • []T 还是 []*T, 这是一个问题
  • [16/N]论得趣
  • [2016.7 Day.4] T1 游戏 [正解:二分图 偏解:奇葩贪心+模拟?(不知如何称呼不过居然比std还快)]
  • [android] 练习PopupWindow实现对话框
  • [Angular] 笔记 9:list/detail 页面以及@Output