export 批量导数据(分区)脚本(手动)

经常在项目中要批量备份数据,在数据仓库环境中,对于分区表的备份我们可以通all_tab_partitions进行批量处理,对于非分区表一般比较容易处理,这里不做介绍。

1.生成导数据脚本

select 'nohup exp '||'scott||'/'||'tigger'||'@bidb LOG='||t.partition_name||'.log TABLES=/('||t.table_name||':'||t.partition_name||'/) FILE='||t.partition_name||'.dmp  ROWS=y '||chr(13)||'
nohup compress '||t.partition_name||'.dmp &' from all_tab_partitions t where t.table_owner=upper('scott') and t.partition_name like '%'||'201009'||'%';

2.在备份的服务器上生成相应的shell脚本,如export_scott201009.sh (目录:/etl/dbbackup/db/scott)--这个目录视自己情况而定.

3.将1中生成的脚本复制到2中的shell脚本中(这里可以用ue的ftp工具进行操作),并去除",用ue的替换功能实现.

4.用vi去除脚本中的^M,(具体做法如下:1,$ s/^M//g (ctrl+v,ctrl+m))然后保存退出.

5.赋脚本以执行权限

chmod +x export_scott201009.sh

6.执行脚本

sh -x export_scott201009.sh

 

你可能感兴趣的:(export 批量导数据(分区)脚本(手动))