批量数据文件用sqlldr导数据到oracle中
发表于:2025-11-09 作者:千家信息网编辑
千家信息网最后更新 2025年11月09日,使用sqlload导文本数据到oracle中想必很多人多使用过,但是倘若有几百或者几千个数据文本,或者实时有文本数据产生。这种场景如何批量导入oracle呢,下面就来讲解下我处理的方式。1.shell
千家信息网最后更新 2025年11月09日批量数据文件用sqlldr导数据到oracle中
使用sqlload导文本数据到oracle中想必很多人多使用过,但是倘若有几百或者几千个数据文本,或者实时有文本数据产生。这种场景如何批量导入oracle呢,下面就来讲解下我处理的方式。
1.shell脚本LoadData.sh如下
#!/bin/bashdata_dir=/home/bea/datasource/warn-log/dayflow # 文本数据目录data_dir_bak=/home/bea/datasource/warn-log/dayflow_bakshell_dir=/home/bea/scriptwhile [ 1 ]docd $data_dirif [ `pwd` == $data_dir ]then filelist=`ls -rt | grep dayflow.log_.` #数据文本文件名匹配fi#echo $filelistcd $shell_dirif [ `pwd` == $shell_dir ]then for file in $filelist do date=`date "+%Y%m%d %H:%M:%S"` export LoadFileName=$data_dir"/"$file #这个地方很重要,要加载变量到环境中 echo "Time is $date ,开始导$LoadFileName数据" sqlldr user_1/123456@213_db control=dayflow.log.ctl BAD=dayflow.log.bad echo "Time is $date ,$LoadFileName数据导入完毕" echo "开始备份文件$file" mv $LoadFileName $data_dir_bak echo "$file备份完毕" donefidone
这个地方最应该要注意的是
export LoadFileName=$data_dir"/"$file
这里将LoadFileName (导入oracle 的文本,绝对路径)这个变量 export到linux环境中,这样sqlload的控制文件就可以读到这个变量并进行导入
2.sqlldr控制文本dayflow.log.ctl
load dataCHARACTERSET AL32UTF8infile '$LoadFileName'APPEND into table user_1.BIL_FLUX_HIGH_CURfields terminated by '|'trailing nullcols(ACCS_NBR "TRIM(:ACCS_NBR)",DATE_ID "TRIM(:DATE_ID)",TOTAL_FLUX "TRIM(:TOTAL_FLUX)",sys_date "sysdate")
请注意 infile '$LoadFileName',这里就是shell中 刚才export的变量,通过这种方式就可以以变量的形式传入文件名,那么批量导入也就是一个循环的操作。
数据
文本
变量
文件
地方
备份
文件名
方式
环境
控制
重要
也就是
场景
实时
就是
形式
目录
脚本
路径
人多
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
全新的sql数据库自动备份
熵值网络安全
CASE能辅助软件开发
客户管理系统数据库代码
国庆期间学校网络安全提醒
郴州电子软件开发学校地址
服务器到期管理系统
邢台哪里有软件开发服务
软件开发和维修
数据库import
数据库为什么要加双服务器
华为消费者bg软件开发部
现阶段数据库系统属于
无锡市腾昕网络技术有限公司
数据库能否存储图片视频
数据库开发技术创建
服务器安全相关论文2000字
mysql数据库set语句
工业企业网络安全工作
数据库应用技术海南联盟
掌阅科技 互联网龙头
12306 后台数据库
思泉软件开发平台怎么样
邢台哪里有软件开发服务
金融稳定与网络安全
嵩明正规软件开发网上价格
我的世界 服务器 不刷怪
自由幻想游戏服务器无法连接
数据库中master拒绝
河北餐饮软件开发系统