Linux sh脚本用spool导出oracle数据库指定表表数据

Posted hanhan6494

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux sh脚本用spool导出oracle数据库指定表表数据相关的知识,希望对你有一定的参考价值。

脚本如下,已验证可用,可配合crontab使用。
1
#!/bin/bash 2 3 cd /opt/oracle/datafor_kf 4 5 #redirect environment variables 6 source /opt/oracle/.bash_profile 7 8 #timestamp:YYYYmmdd 9 fdate=`date +%Y%m%d` 10 11 localGtFile="tcm_local_gtt_list_$fdate.txt" 12 allGtFile="tcm_all_gtt_list_$fdate.txt" 13 ecFile="tcm_ec_smsc_server_$fdate.txt" 14 spFile="tcm_sp_smsc_server_$fdate.txt" 15 16 17 #login 18 /opt/oracle/app/oracle/product/12.2.0/dbhome_1/bin/sqlplus uid/pwd@hostname:port/db<<EOF 19 SET echo off 20 SET feedback off 21 SET newpage none 22 SET pagesize 0 23 SET linesize 5000 24 SET verify off 25 SET term off 26 SET trims ON 27 SET heading off 28 SET trimspool ON 29 SET trimout ON 30 SET timing off 31 32 33 --tcm_local_gtt_list 34 spool "/home/ftp_kf/$localGtFile" 35 SELECT province||,||busi_city||,||area_code||,||gt||,||bel_hlr||,||spc||,||ser_type from TCM_GMSCSERVER_GT; 36 spool off 37 38 39 --tcm_all_gtt_list 40 spool "/home/ftp_kf/$allGtFile" 41 --used 42 SELECT province||,||busi_city||,||area_code||,||start_gt from TCM_CMCC_DATA_JT; 43 --test 44 --SELECT province||,||busi_city||,||area_code||,||start_gt from TCM_CMCC_DATA_JT where start_gt=1348803; 45 spool off 46 47 48 --tcm_ec_smsc_server 49 spool "/home/ftp_kf/$ecFile" 50 --used 51 SELECT SERVER_CODE||,||EC_NAME||,||MAIN_ACCESS_ADDR||,||hy type from HY_SMGATE; 52 --test 53 --SELECT SERVER_CODE||,||EC_NAME||,||MAIN_ACCESS_ADDR||,||hy type from HY_SMGATE where SERVER_CODE=10037; 54 spool off 55 56 57 --tcm_sp_smsc_server 58 spool "/home/ftp_kf/$spFile" 59 SELECT SERVER_CODE||,||SP_CONTENT_NAME||,||MAIN_ACCESS_ADDR from TCM_SP_NETGATE; 60 spool off 61 62 63 exit 64 EOF 65 66 #del line where it start by SQL 67 /bin/sed -i /SQL/d $localGtFile 68 /bin/sed -i /SQL/d $allGtFile 69 /bin/sed -i /SQL/d $ecFile 70 /bin/sed -i /SQL/d $spFile 71 72 #del file before today 73 /bin/find /home/ftp_kf/* -mtime +1 -exec rm {} ;

 


以上是关于Linux sh脚本用spool导出oracle数据库指定表表数据的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Oracle APEX 中设置 SPOOL 脚本以将视图数据导出为 CSV?

SPOOL 命令使用实例oracle导出纯文本格式文件

linux下查询oracle数据库表中符合条件内容并导出到指定目录下txt文件

zabbix 使用spool监控oracle锁表

oracle数据量巨大表查询时间太长,sqlplus有的不能spool出结果

sql spool off怎么用