设为首页 收藏本站
查看: 938|回复: 0

[经验分享] oracle自动(删除)备份日志表

[复制链接]

尚未签到

发表于 2016-8-12 07:19:31 | 显示全部楼层 |阅读模式
  
 
  
1) 编写语句创建备份所需的文件夹(把以下语句粘贴到打偶后缀为vbs文件里,如createFolder.vbs)
  
 
  
Dim StrDate
  
Dim Obj
  
Dim P
  
 
  
rem 获取当前系统时间--修改格式为--2013-07-04
  
StrDate = StrDate & Year(Date)
  
If(Month(Date)<10) Then
  
       StrDate = StrDate & "-0" & Month(Date)
  
Else
  
       StrDate = StrDate & "-" & Month(Date)
  
End If
  
 
  
If(Day(Date)<10) Then
  
       StrDate = StrDate & "-0" & Day(Date)
  
Else
  
       StrDate = StrDate & "-" & Day(Date)
  
End If
  
 
  
 
  
Set WshShell=CreateObject("WScript.Shell")
  
 
  
rem 获取文件对象
  
Set Obj = CreateObject("Scripting.FileSystemObject")
  
 
  
rem 判断文件夹是否存在
  
If(Obj.FolderExists("g:\backdb\back\" & StrDate)) Then
  
Else
  
 
  
rem 创建文件夹
  
       Set P = Obj.CreateFolder("g:\backdb\back\" & StrDate)
  
       CreateFolderDemo = P.Path
  
End If
  
 
  
红色部分为数据库备份文件存储的的目录
  
 
  
 
  
  2) 编写语句删除过期备份(把以下语句粘贴到打偶后缀为vbs文件里,如:deleteFolder.vbs)
  
Dim Obj
  
Dim fos
  
Dim fs
  
Dim f
  
Dim c
  
       c = -1
  
Dim arr(100)
  
Dim c2,c3,temp
  
 
  
 
  
rem 获取指定目录下的所有文件名,存入数组
  
Set Obj = CreateObject("Scripting.FileSystemObject")
  
Set fos = Obj.GetFolder("g:\backdb\back\")
  
Set fs = fos.SubFolders
  
For Each  f in fs
  
       c = c +1
  
       arr(c) = f.name
  
Next
  
 
  
 
  
rem 将文件名按照实际排序
  
For c2 = 0 To c
  
       For c3 = c2 + 1 To c
  
              If(arr(c2)<arr(c3)) Then
  
                     temp = arr(c2)
  
                     arr(c2) = arr(c3)
  
                     arr(c3) = temp
  
              End If
  
       Next
  
Next
  
 
  
rem 删除多余的文件
  
For c2 = 0 To c
  
       If(c2>13) Then
  
              Obj.DeleteFolder("g:\backdb\back\" & arr(c2))
  
       End If
  
Next
  
红色部分为数据库备份文件存储的的目录
  
红色、黄底部分是备份文件保留时间(单位:天数-1)
  
 
  
 
  
 
  
  3)填写数据备份语句文件(把以下语句粘贴到打偶后缀为vbs文件里,如bakup_gpsdata.vbs)
  
 
  
Dim StrCmd
  
Dim StrDate
  
Dim WshShell
  
 
  
Set WshShell=CreateObject("WScript.Shell")
  
 
  
(这一段是获取系统时间,并且更改格式为--2013-07-04-----yyyy-mm-dd)
  
StrDate = StrDate & Year(Date)
  
If(Month(Date)<10) Then
  
       StrDate = StrDate & "-0" & Month(Date)
  
Else
  
       StrDate = StrDate & "-" & Month(Date)
  
End If
  
 
  
If(Day(Date)<10) Then
  
       StrDate = StrDate & "-0" & Day(Date)
  
Else
  
       StrDate = StrDate & "-" & Day(Date)
  
End If
  
 
  
 
  
StrCmd="exp gpsdata/gpsdata@fcgpgis file=G:\BACKDB\back\" & StrDate  & "\" & StrDate & "_gpsdata_bak.dmp log=gpsdata.log"
  
 
  
WshShell.run StrCmd
  
 
  
WScript.quit
  
 
  
其中红色的部分是需要根据实际情况修改的部分。
  
  注释:
  
 其中exp pgisapp/pgisapp@pgis 为要导出的用户的用户名和密码,@之后的为数据库的实例名,
  
      F:\EzSoft\backupdb\  为导出文件所要放置本地目录
  
      _pgisapp_bak.dmp为导出文件的名称
  
 log=pgisapp.log   为日志文件名称
  
 
  
 
  
<!--[if !supportLists]-->4)<!--[endif]-->编写任务执行语句(把以下语句粘贴到打偶后缀为bat文件里,如run.bat)
  
createFolder.vbs
  
bakup_DbSID.vbs
  
*****
  
*****
  
*****
  
deleteFolder.vbs
  
 
  
 
  
红色部分为步骤1)编写的vbs文件名:用于创建备份所需的文件夹
  
蓝色部分为步骤3)编写的vbs文件名:用于数据库备份
  
绿色部分是步骤2)编写的vbs文件名:用于删除过期的备份
  
 
  
 
  
4)添加任务计划
  
 
  
a、在开始--控制面板--任务计划-添加任务计划
  
 
  
b、在浏览中选择要执行的备份执行文件(bat文件)
  
c、填写任务计划的名称,和选择执行这个计划的频率时间
 
  
d、输入执行起始时间和日期(建议是晚上或者凌晨时间执行,)
 
  e、输入服务器本身的用户名和密码
 
  
  f、单击完成。
 
  
 

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-256703-1-1.html 上篇帖子: ORACLE生成所有表对应的序列 下篇帖子: Oracle重置sys,system密码
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表