eygle.com   eygle.com
eygle.com eygle
eygle.com  
 

« Oracle Fast-Start Fault Recovery选件 | Blog首页 | 我的写作进度之二 »

如何为Oracle导出文件加上时间戳
modb.pro

论坛上经常有人,如何给导入文件加上时间戳标记.在这里把我曾经给过的两种方法总结一下.

1.可以在DOS下从系统获得时间戳

利用Dos命令取得时间戳:

C:\>echo %date%
2006-04-24 星期一

C:\>echo %date:~0,10%
2006-04-24

接下来使用导出(exp)工具引用该时间戳就很容易了: 

exp userid=eygle/eygle file=d:\eygle%date:~0,10%.dmp log=d:\eygle%date:~0,10%.log

2.使用sql脚本从数据库获得时间戳

有朋友反应在NT下该命令执行结果与Windows2000和WindowsXp上不同,没有NT的环境可以试验(据网友说用""把date引用起来就可以了,如: "%date%",我没有测试过).

我们也可以使用如下的SQL方式获得时间戳.

首先编写一个doexp.sql脚本:

column today new_val dt
select to_char( sysdate, 'ddmmyyyy' ) today from dual;
host exp userid=eygle/eygle tables=emp file=exp_prod_&dt..exp log=exp_prod_&dt..log
exit

再编写一个start.bat批处理脚本调用doexp.sql脚本:

echo off
set oracle_sid=eygle
sqlplus eygle/eygle @doexp

执行结果如下:

E:\Itpub\ItpubTrain\Exp2>dir
 驱动器 E 中的卷是 SWAPDK
 卷的序列号是 F8BA-FCAC

 E:\Itpub\ItpubTrain\Exp2 的目录

2003-10-07  15:14    <DIR>          .
2003-10-07  15:14    <DIR>          ..
2003-08-26  15:18               170 doexp.sql
2003-10-07  15:12             4,096 exp_prod_07102003.exp
2003-10-07  15:12               335 exp_prod_07102003.log
2003-08-26  15:18             4,096 exp_prod_26082003.exp
2003-08-26  15:18               312 exp_prod_26082003.log
2003-10-07  15:42             4,096 exp_prod_30082003.exp
2003-08-30  17:09               335 exp_prod_30082003.log
2003-10-07  15:14             1,660 sqlnet.log
2003-10-07  15:12                60 start.bat
               9 个文件         15,160 字节
               2 个目录    674,652,160 可用字节

如果大家有什么好的方法,欢迎交流.

 


历史上的今天...
    >> 2020-04-24文章:
    >> 2016-04-24文章:
    >> 2013-04-24文章:
    >> 2011-04-24文章:
    >> 2008-04-24文章:
           peer.exe 进程是什么?
    >> 2005-04-24文章:
           How to use Oracle BFILE
           The Usage Of BFILENAME Function
           Solaris Open File Limit

By eygle on 2006-04-24 17:13 | Comments (1) | FAQ | 754 |

1 Comment

Oracle数据库自动备份方法
在硬盘建立x.bat文件,编辑以下内容:
@echo off
setlocal
for /f "tokens=2 delims= " %%1 in ("%date%") do @set D=%%1
for /f "tokens=1-3 delims=:." %%1 in ("%time%") do @set T=%%1-%%2
d:oracleora92binexp.exe user/pwd@orcl file= "%D%@%T%.dmp"
endlocal

在windows计划任务中建立定期运行此bat文件的计划,即可。
#在windows2000server+oracle9i上测试通过。
#需要修改以上内容中oracle数据库的安装路径和访问数据库的用户名及密码。
#生成的文件格式为2006-10-01orcl.DMP.其中,orcl为你的数据库的服务名。


CopyRight © 2004~2020 云和恩墨,成就未来!, All rights reserved.
数据恢复·紧急救援·性能优化 云和恩墨 24x7 热线电话:400-600-8755 业务咨询:010-59007017-7040 or 7037 业务合作: marketing@enmotech.com