【Ecstore2.0】计划任务/队列/导入导出 的执行问题

【环境】CENTOS6.3 + wdcp(php5.3)

【症状】可正常加入队列,但不执行队列

【原因】大部份都是用户权限造成

【原理】

  Ecstore2.0的导入导出、发送邮件、日常清理备份等任务操作,都通过用入任务队列,然后采用LINUX的CRON任务调试定时来执行并清空队列。

【方法】

  第一步:测试linux环境的cron是否能被正常执行,从root用户开始

#root身份登陆
crontab -uroot -e

#输入:每隔一分钟向test文件写入当前时间,保存退出
*/1 * * * * date>>~/test

#重启cron服务
service crond restart

#监视cron日志
tail -f /var/log/cron

#监视test变化
tail -f ~/test

如不能执行,确认cron服务是否安装和启动,具体方法就不多说了,自行GOOGLE吧。

  第二步:确认 www 用户可正常执行计划任务

#root身份登陆
crontab -uwww -e

#输入:每隔一分钟向test文件写入当前时间,保存退出
*/1 * * * * . /etc/profile;/bin/sh date>>~/test

#重启cron服务
service crond restart

#监视cron日志
tail -f /var/log/cron

#监视test变化
tail -f ~/test

 www用户的文件中,命令前加了“. /etc/profile;/bin/sh”,这是因为www没有载入环境变量。

  第三步:修改www的用户配置,wdcp/wdlinux中 www用户的主目录默认为/dev/null,我这里改为/home/www,并赋于www用户读写权限。

#更改用户主目录(执行前先确认www用户的UID,cat /etc/passwd)#需要先停止WEB服务,否则会提示www用户已登陆(usermod: user www is currently logged in)

usermod -d /home/www -u 1000 www

#启动web服务器,重新偿试第二步

   第四步:修改www用户的任务配置文件(配置文件以用户名命名存放在 /var/spool/cron)

crontab -uwww -e

*/1 * * * * . /etc/profile;/bin/sh /www/web/aaa_com/public_html/script/queue/queue.sh>/dev/null
*/1 * * * * /www/web/aaa_com/public_html/script/crontab/crontab.php /www/wdlinux/wdphp/bin/php>/dev/null

#重启cron服务,service crond restart

   注:当你用 tail -f /var/log/cron 发现任务在重复执行时,使用  ps aux |grep cron* 查看是有多个cron进程,如果有kill掉就可以了

   基本完工,就这么多了。在此之前,最好先以root手工执行 /www/web/aaa_com/public_html/script/queue/queue.sh,查看是否成功。

   如果导出任务执行正常,但是下载的文件为0字节,或发现并未在FTP目录中创建导出文件,可以移步【这里

时间: 2024-09-11 20:49:02

【Ecstore2.0】计划任务/队列/导入导出 的执行问题的相关文章

【转】使用Navicat 8.0管理mysql数据库(导入导出数据)

首先我们来导出数据: 1)打开Navicat 8,选择你要导出的数据库,右键 > 转存SQL文件,如图: 至此,已完成了数据的导出操作. 2)使用Navicat 8来导入数据 A,先创建好数据库,这时数据库是空的,接下来我们进行数据导入: 选择需要导入数据的数据库名,右键 > 运行批次任务文件 选择刚才我们导出的SQL文件, 好,下面我们点开始, 待执行完后,就完成数据导入了

【导入导出】执行导入,导出时如何以as sysdba 身份连接。

1. Command line.命令行形式 C:\Users\aaaa>exp 'system/yang as sysdba'  tables=scott.emp  file=emp.dmp Export: Release 11.1.0.6.0 - Production on 星期日 2月 20 22:26:41 2011 Copyright (c) 1982, 2007, Oracle.  All rights reserved. 连接到: Oracle Database 11g Enterp

【Ecstore2.0】导出问题解决(未导出或导出文件为0字节)

如果导出队列能成功执行(队列不执行看这里)但是并未生成文件,那么原因大部份可能是出在FTP上. ECSTORE2.0采用了PHP的FTP模块,所以先确认你的环境是否安装了FTP模块,如果没有,安装并在PHP.INI中配置好模组路径. 功能文件:\app\importexport\lib\policy\ftp.php ,程序中使用 ftp_nb_put() 异步上传,这里告诉大家一个调试方法:在适当的位置加入 logger::info('debug info');   然后查看 /data/log

360安全浏览器6.0如何导入/导出数据和收藏夹

  点击收藏右侧的下拉按钮,选择导入/导出即可. 收藏夹内容不见了怎么办 这可能是您没有登录之前同步过收藏夹的360帐号,您可以重新登录试试看. 如果您已经登录了360账户,您可以点击账号头像,进入时间机器,然后通过"收藏夹备份"恢复.

PostgreSQL 统计信息pg_statistic格式及导入导出dump_stat - 兼容Oracle

标签 PostgreSQL , dump_stat , 统计信息 , 导出导入 背景 <PostgreSQL 规格评估 - 微观.宏观.精准 多视角估算数据库性能(选型.做预算不求人)> EXPLAIN是PG数据库用于输出SQL执行计划的语法, 1.生成的执行计划中包含COST一项. 如果校准了成本因子,COST可以和SQL实际执行时间对其.因子校对的方法如下,实际上每一种硬件,我们只需要校对一遍即可. <优化器成本因子校对(disk,ssd,memory IO开销精算) - Postg

dbms_stats 导入导出 schema 级别统计信息

    在使用CBO优化器模式的Oracle数据库中,统计信息是CBO生成最佳执行计划的重要依据.这些统计信息通常包括列级.表级.索引.系统级别的统计信息等.所有的这些统计信息都可以被备份,导入导出也可以被锁定与解锁.因此相应地,我们可以导出列级.表级.索引.系统级别的统计信息.通过导出导入统计信息,可以在测试环境来模拟产生环境进行数据库性能优化,SQL调优等.本文主要描述了基于schema级别导出导入统计信息到不同的数据库.     关于统计信息的具体描述与用法,本文不作详细介绍,大家可以参考

5.非关系型数据库(Nosql)之mongodb:创建集合,备份与导入导出, 数据还原,导入导出

 1 固定集合 固定集合值得是事先创建而且大小固定的集合 2 固定集合的特征:固定集合很像环形队列,如果空间不足,最早文档就会被删除,为新的文档腾出空间.一般来说,固定集合适用于任何想要自动淘汰过期属性的场景,没有太多的操作限制. 3 创建固定集合使用命令: db.createCollection("collectionName",{capped:true,size:100000,max:100}); size:指定集合大小,单位为KB,max指定文档的数量 当指定文档数量上限时,

使用NPOI导入导出标准Excel

转自http://www.cnblogs.com/lwme/archive/2011/11/18/npoi_excel_import_export.html   试过很多Excel导入导出方法,都不太理想,无意中逛到oschina时,发现了NPOI,无需Office COM组件且不依赖Office,顿时惊为天人,怀着无比激动的心情写下此文. 曾使用过的方法 直接导出html,修改后缀名为.xls,这个方法有点像骗人的把戏,而且不能再导入 使用Jet OLEDB引擎来进行导入导出,完全使用sql语

Oracle导入导出数据库的语法

    导读:oracle中除了在Oracle编辑器中用图形化的方式导入导出文理文件的数据方式外,还可以采用命令行的方式导入导出数据库,其语法实示例如下:    imp [username[/password[@service]]]    步骤:1.首先在进入 dos, 然后切换到 oracle 数据库物理文件所在的目录即(dmp文件所在的目录).接下来输入下述语句!    imp username/password@service file=psmis.dmp fromuser=psmis t