文章目录
- 一、数据装载前置准备
- 1.1. 切换用户
- 1.2. 生成文件
- 二、手动触发
- 2.1. 拉取文件
- 2.2.文件数据加载
- 2.3. 数据查询
- 2.4. 数据查询
- 三、定时调度
- 3.1. 添加任务
- 3.2. 配置频次
- 3.3. 重新加载
- 3.4. 总览任务列表
- 3.5. 监控是否执行
一、数据装载前置准备
1.1. 切换用户
切换用户为oracle
su - oracle注:如果有oracle密码,可以跳过此步骤,直接登录即可
1.2. 生成文件
生成表控制文件(.ctl)
# 进入生成控制文件目录
cd /app/jiazai/sql_loadv1.0/control/# 删除以前的控制文件
rm -rf new.unl old.unl file/# 重新生成控制文件
sh ./new.sh
数据装载分为手动触发和定时触发二种场景,接下来为小伙伴们,分开来介绍
二、手动触发
2.1. 拉取文件
先连接ODS的sftp服务器将需要装载的文件下载到本地服务器,然后,执行数据清除,将临时B表中的数据删除
#拉取sftp文件到本地应用
# 进入到根目录
cd /app/jiazai/sql_loadv1.0/# 执行加载指定日期的文件
# 格式:sh load.sh 加载数据文件日期文件夹
sh load.sh 20201027
2.2.文件数据加载
将下载下来的文件进行解析并加载到Oracle数据库
流程:
数据文件解析–>Oracle 临时表–>目标表
说明:首先将文件中的数据解析加载到数据库的临时表中,然后,调用存储过程,将临时B表中的数据同步到目标表中
# 进入下载的日期文件夹下面
cd /app/jiazai/sql_loadv1.0/loaded/20201027/# 执行加载处理
sh run_sqlldr.sh注:加载完成后,会显示 load success !
2.3. 数据查询
数据库查询临时表
SELECT * FROM XXX临时一套表
2.4. 数据查询
去数据库查询目标表
SELECT * FROM XXX目标一套表
三、定时调度
3.1. 添加任务
编辑定时文件
crontab -e
3.2. 配置频次
配置执行频次
在/app/jiazai/sql_loadv1.0/目录下面有个总控脚本:xxxloadupgrade.sh
*/30 * * * * /bin/sh /app/jiazai/sql_loadv1.0/xxxloadupgrade.sh保存,退出
3.3. 重新加载
重新加载cron服务
/sbin/service crond restart
3.4. 总览任务列表
查看当前用户下的定时任务列表
crontab -l
3.5. 监控是否执行
1》可以借助根据日志查看
2》可以借助plsql工具查询