Chinaunix首页 | 论坛 | 博客
  • 博客访问: 369570
  • 博文数量: 100
  • 博客积分: 2586
  • 博客等级: 少校
  • 技术积分: 829
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-09 15:20
个人简介

我是一个Java爱好者

文章分类

全部博文(100)

文章存档

2014年(2)

2013年(7)

2012年(2)

2010年(44)

2009年(28)

2008年(17)

我的朋友

分类: Oracle

2008-11-18 10:48:26

Oracle 10g为我们提供了expdp命令来将数据库数据导出到文件,因此我们可以使用脚本来实现数据定时导出文件的功能,其步骤如下:
1、创建脚本文件,并保存为exportOracle.bat
2、配置expdp导出命令
其命令示例如下:
expdp system/pwd directory=pms_backup_schema dumpfile=%date:~0,10%exp.dmp logfile=%date:~0,10%exp.log schemas=pmsuser job_name=exp_test_schema
(注意:以上所有代码都写在一行)
 
以上黑体部分为可替换字符,其说明如下:
system
具有导出权限的用户名
pwd
上述用户密码与用户名使用“/”连接
pms_backup_schema
oracle的目录空间对象名
%date:~0,10%exp.dmp
该字符串指示了导出文件的文件名,“%”之间为系统日期变量,并格式化为从0字符开始的10个字符大小。例如2006年11月30日 星期四,格式化为2006-11-30。
%date:~0,10%exp.log
该字符串指示了导出日志的文件名,规则同上
pmsuser
表空间名
exp_test_schema
作业名
3、复制导出文件到临时文件夹
命令示例如下:
e:
cd E:\oracle\pmsSchemaBackup
copy %date:~0,10%exp.dmp     temp\%date:~0,10%exp.dmp
(注意:以上代码分三行)
 
以上黑体部分为可替换字符,其说明如下:
e:
       进入导出文件所在盘符
cd E:\oracle\pmsSchemaBackup
       进入导出文件所在文件夹
copy %date:~0,10%exp.dmp     temp\%date:~0,10%exp.dmp
       复制已导出的文件到temp下,文件名规则同上
4、建立FTP服务器
       在源机器(比如数据库所在服务器)或目标机器(比如需要同步备份到的机器)上使用IIS搭建FTP服务器,并设置相应的目录指向和权限。
如在目标机器搭建FTP服务器,将目录指向即将存放备份文件的路径,并使目录可写,这样做的优点是同步执行脚本处于同一机器,有利于统一管理。
如在源机器搭建FTP服务器,则只需将目录指向导出文件所在路径,开放读取权限即可,但以下的脚本需要运行在目标机器上。
这里使用了目标机器搭建FTP服务器。
5、建立FTP操作脚本
创建一个新文件,并命名为ftpup.src,其内容如下:
open 127.0.0.1
user oracleBackup
password
put E:\oracle\pmsSchemaBackup\temp\*EXP.DMP
close
quit
       (注意:以上代码分行是必须的)
      
以上黑体部分为可替换字符,其说明如下:
open 127.0.0.1
       登录指定IP的FTP服务器
user oracleBackup
       用户名
password
       该行必须位于单独一行,为密码
put E:\oracle\pmsSchemaBackup\temp\*EXP.DMP
       上传temp目录下所有的文件
close
       关闭连接
quit
       退出
6、在exportOracle.bat中加入FTP操作脚本
       在exportOracle.bat后追加代码:
ftp -n -s:E:\oracle\pmsSchemaBackup\ftpup.src
       黑体部分为步骤5创建的ftpup.src文件的绝对路径
7、删除临时文件
       命令:
              del temp\*exp.dmp
       以删除temp的临时文件
8、建立计划任务
       打开windows计划任务,新建一个计划,设定运行文件为exportOracle.bat,并设置相应的时间间隔。
如果选择了源机器搭建FTP数据库,则需要在源机器和目标机器上分别建立计划任务。
阅读(1157) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~