怎么样让MySQL每天定时读取以日期命名的txt文件?

MySql 码拜 8年前 (2016-02-05) 1013次浏览
[size=16px]本地目录每天会生成一个数据文件,文件名格式是“YYYYMMDD.txt”,
本人采用批处理程序:mysql -P3308 -uroot -p**** mydata -e “load data local infile “D:\20160527.txt” into table try fields terminated by “\t””; 可以实现指定文件名数据的读取。
但是本人需要的是每天读取新的数据文件,也就是文件夹下当天或前一天产生的新文件YYYYMMDD.txt文件。
此时:mysql -P3308 -uroot -p**** mydata -e “load data local infile “D:\%date_format(now(),”%Y%m%d”)%.txt” into table try fields terminated by “\t””;就不行了。
讨教各位,这一要怎么实现?感激不尽。

PS:try 是表名。[/size]
解决方案

10

相似于这样的格式:

_file=./te2.txt
_mysql=/usr/bin/mysql
_db_host=-h192.168.1.1
 _db_port=-P3306
 _db_user=-ujason
 _db_password=-p123
 rm $_file
 ${_mysql} ${_db_host} ${_db_port} ${_db_user} ${_db_password} -NB -e "show full processlist;"  >> ${_file}

里面的 时间,你可以这么写:
`date +%Y%m%d`
这个能产生日期

15

关于定时和wWINDOWS下取系统时期拼接字符串,可以参考下面贴子。
http://bbs.csdn.net/topics/320136534

15

引用 8 楼 qiufengily 的回复:
Quote: 引用 6 楼 weishaolin13x 的回复:

最好做个执行计划,任务来调度了,

你说的是Windows系统自带的任务计划还是什么?

假如是linux里面有cron 可以设置自动

引用 11 楼 qiufengily 的回复:
Quote: 引用 4 楼 yupeigu 的回复:

相似于这样的格式:

_file=./te2.txt
_mysql=/usr/bin/mysql
_db_host=-h192.168.1.1
 _db_port=-P3306
 _db_user=-ujason
 _db_password=-p123
 rm $_file
 ${_mysql} ${_db_host} ${_db_port} ${_db_user} ${_db_password} -NB -e "show full processlist;"  >> ${_file}

里面的 时间,你可以这么写:
`date +%Y%m%d`
这个能产生日期

亲  你好。本人的是Windows系统,用的Cygwin 来模拟Linux环境,本人在Cygwin中使用shell语句实现了对日期名txt文件的读取。现在问题出在每天定时上面。在crontab文件遇到问题:
1.使用Cygwin模拟Linux环境时,能否也可以用crontab定时执行任务?能否需要Cygwin一直开启?
2.假如可以,要怎么样实现呢?能否也像Linux环境一样操作呢?

盼版主以及各位高手解答。

假如是用cygwin模拟linux环境,应该只是提供了一堆的命令行。
建议在windows下可以用计划任务来实现定时任务。


CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明怎么样让MySQL每天定时读取以日期命名的txt文件?
喜欢 (0)
[1034331897@qq.com]
分享 (0)