环境:
windowsXP + mysql 5.0.83使用windows的计划任务添加了任务:
AT 08:58 /every:m,t,w,th,f,s,su "d:\mysql\mysql server 5.0\bin\mysql.exe" -u root -p123 testdb < c:\cleartby.sql系统在08:58开始执行,到现在09:26,“任务计划”中的该项任务的状态仍然是“正在运行”;
中间我还以为是我使用第3方软件操作MYSQL的问题,关闭了这个管理软件,情况依旧。
且查询过要被清理的表,数据依旧存在。
后来,我在cmd下单独执行:
"d:\mysql\mysql server 5.0\bin\mysql.exe" -u root -p123 testdb < c:\cleartby.sql
不到3秒的功夫执行完毕,且查询过要被清理的表,数据被清理。
这是什么问题呢?

解决方案 »

  1.   

    cleartby.sql什么内容,为什么不用MYSQL的EVENT
      

  2.   

    据说EVENT 要MYSQL5.1版本才支持,我在官网只找到5.5的,太新不敢用,
    而且,感觉windows任务比较简单。嘿嘿。
      

  3.   

    你的AT命令好像有问题,建议你直接用WINDOWS的计划任务的图形界面创建你的任务。
      

  4.   

    刚使用图形界面了任务,看到他启动了CMD,唰的一下就不见了,但查询表数据依然存在,我把该任务的中的
    “运行”的字串,拷贝到CMD运行,
    "D:\MySQL\MySQL Server 5.0\bin\mysql.exe" -u root -p123 testdb < c:\cleartby.sql
    执行成功!查过了,在任务执行的时间前后都没有信息;
      

  5.   

    mysql打开日志没有,看看内容
      

  6.   

    配置my.ini或者 my.cnf 
    5.1后
    [mysqld] 
    log=my.log 
    log-output=FILE
      

  7.   

    写到bat文件里,然后重定向log到一个文件里,查看文件的错误信息。
      

  8.   

    我在my.ini加入
    log=my.log  
    log-output=FILE
    后,关闭MYSQL再启动就失败了, “发送系统错误1067”,
    删除就OK了
      

  9.   

    我用的是MYSQL5.0不能加log-output=FILE这句。
    同样的语句
    "D:\MySQL\MySQL Server 5.0\bin\mysql.exe" -u root -p123 testdb < c:\cleartby.sql写到BAT中,自动执行BAT,就成功了。
      

  10.   

    在[mysqld] 下?测试:没有问题啊
      

  11.   

    我输出了my.log,清空my.log执行命令;
    1.测试查询hy_rt_b表,发现增加:
    110412 11:06:12       2 Query       select * from hy_rt_b
    2.运行windows任务计划,发现增加;
    110412 11:06:33       2 Statistics 
      

  12.   

    看来只能用BAT方式了,可惜了数据库密码是可见的。
      

  13.   

    AT 08:58 /every:m,t,w,th,f,s,su '"d:\mysql\mysql server 5.0\bin\mysql.exe" -u root -p123 testdb < c:\cleartby.sql'