Win下Mysql数据每日查询导出发送方案
2015-12-04 17:56
916 查看
1、数据处理的存储过程
2、实现连续跑多天存储过程(一个月内)
3、数据导出目录路径
4、获取昨天日期的vbs脚本
C:\data_dir\data-exp-daily>type mydate.vbs
5、测试昨天日期获取正确与否脚本
C:\data_dir\data-exp-daily>type fetch_n_day_ago.bat
6、数据处理脚本
C:\data_dir\data-exp-daily>type data_proc_script.bat
7、设定计划任务
将data_proc_script.bat执行脚本在任务计划中设置成每天定时执行。
8、后续处理
将导出的数据文件以邮件方式发送出去;当然更深一步,可以设定邮件自动发送。
CREATE DEFINER=`datahs`@`%` PROCEDURE `p_kingr_sum_daily`(IN `p_statistics_date` int) BEGIN insert into datatest.kingr1 ........................... drop table if EXISTS tmp_loan_app_distinct; create table tmp_loan_app_distinct as select uid from h_f_loan_apply group by uid ; ALTER TABLE `tmp_loan_app_distinct`ADD UNIQUE INDEX `loan_dist_key` (`uid`) USING BTREE ; insert into datatest.kingr2 ........................... insert into datatest.kingr3 ........................... insert into datatest.kingr4 ........................... insert into datatest.kingr5 ........................... commit; END
2、实现连续跑多天存储过程(一个月内)
CREATE DEFINER=`datahs`@`%` PROCEDURE `p_execproc_while`() BEGIN declare i integer; set i=20151201; while i<=20151231 do begin call p_kingr_sum_daily(i); SET i=i+1; end; end while; END
3、数据导出目录路径
C:\data_dir>tree c:\data_dir\data-exp-daily /f 卷 Windows 的文件夹 PATH 列表 卷序列号为 D4D2-8713 C:\DATA_DIR\DATA-EXP-DAILY │ data_proc_script.bat │ fetch_n_day_ago.bat │ mydate.vbs │ └─kingr_data kingr1_20151203.txt kingr2_20151203.txt kingr3_20151203.txt kingr4_20151203.txt kingr5_20151203.txt
4、获取昨天日期的vbs脚本
C:\data_dir\data-exp-daily>type mydate.vbs
CreateObject("Scripting.FileSystemObject").CreateTextFile("C:\data_dir\data-exp-daily\MyDate.cmd").Write "Set MyDate=" & DatePart("yyyy",Date - 1) & Right("0" & DatePart("m",Date - 1), 2) & Right("0" & DatePart("d",Date - 1),2)
5、测试昨天日期获取正确与否脚本
C:\data_dir\data-exp-daily>type fetch_n_day_ago.bat
@ECHO OFF Cscript C:\data_dir\data-exp-daily\mydate.vbs //NoLogo CALL C:\data_dir\data-exp-daily\MyDate.CMD DEL C:\data_dir\data-exp-daily\MyDate.CMD ECHO ON @ECHO %MyDate% @ECHO OFF pause
6、数据处理脚本
C:\data_dir\data-exp-daily>type data_proc_script.bat
@ECHO OFF Cscript C:\data_dir\data-exp-daily\MyDate.vbs //NoLogo CALL C:\data_dir\data-exp-daily\MyDate.CMD DEL C:\data_dir\data-exp-daily\MyDate.CMD ECHO ON rem set FormatDate=%MyDate:~0,4%%MyDate:~5,2%%MyDate:~8,2%\ set FormatDate=%MyDate% mysql -h120.55.189.188 -udatawarehouse -pDTHS2015 -e "delete from datatest.kingr1 where statistics_date=%FormatDate%;" mysql -h120.55.189.188 -udatawarehouse -pDTHS2015 -e "delete from datatest.kingr2 where statistics_date=%FormatDate%;" mysql -h120.55.189.188 -udatawarehouse -pDTHS2015 -e "delete from datatest.kingr3 where statistics_date=%FormatDate%;" mysql -h120.55.189.188 -udatawarehouse -pDTHS2015 -e "delete from datatest.kingr4 where statistics_date=%FormatDate%;" mysql -h120.55.189.188 -udatawarehouse -pDTHS2015 -e "delete from datatest.kingr5 where statistics_date=%FormatDate%;" mysql -h120.55.189.188 -udatawarehouse -pDTHS2015 -e "call datahouse.p_kingr_sum_daily(%FormatDate%);" mysql -h120.55.189.188 -udatawarehouse -pDTHS2015 -e "select * from datatest.kingr1 where statistics_date=%FormatDate%;" > C:\data_dir\data-exp-daily\kingr_data\kingr1_%FormatDate%.txt mysql -h120.55.189.188 -udatawarehouse -pDTHS2015 -e "select * from datatest.kingr2 where statistics_date=%FormatDate%;" > C:\data_dir\data-exp-daily\kingr_data\kingr2_%FormatDate%.txt mysql -h120.55.189.188 -udatawarehouse -pDTHS2015 -e "select * from datatest.kingr3 where statistics_date=%FormatDate%;" > C:\data_dir\data-exp-daily\kingr_data\kingr3_%FormatDate%.txt mysql -h120.55.189.188 -udatawarehouse -pDTHS2015 -e "select * from datatest.kingr4 where statistics_date=%FormatDate%;" > C:\data_dir\data-exp-daily\kingr_data\kingr4_%FormatDate%.txt mysql -h120.55.189.188 -udatawarehouse -pDTHS2015 -e "select * from datatest.kingr5 where statistics_date=%FormatDate%;" > C:\data_dir\data-exp-daily\kingr_data\kingr5_%FormatDate%.txt
7、设定计划任务
将data_proc_script.bat执行脚本在任务计划中设置成每天定时执行。
8、后续处理
将导出的数据文件以邮件方式发送出去;当然更深一步,可以设定邮件自动发送。
相关文章推荐
- mysql常用指令
- 使用JDBC在MySQL数据库中快速批量插入数据
- mysql root用户没有超级权限或忘记密码
- 由于外键的存在引发的一个mysql问题 Cannot change column 'id': used in a foreign key constraint
- MySQL----mysql_secure_installation 安全配置向导
- MySQL内存使用 – 全局共享
- MySQL学习笔记
- MySQL 分区表详解
- mysql配置
- mysql做报表必知
- mysql limit后的注入
- Mysql几种索引类型的区别及适用情况(转载)
- MySQL内存使用-线程独享
- MySQL 计算每周第一天、每月第一天的方法
- 获取mysqli函数的值和字段名
- 解决cmake编译Mysql 5.6报错CMP0022
- MySQL (ZIP Archive) 下载及安装及卸载
- mysql 锁总结
- Mysql 命令操作笔记
- 如何查看MySQL配置文件的读取顺序。