LPCTSTR lpszHttpdown = _T("./NetCenter_Cache/FileCahce_HttpDown.Dat");我使用的相对路径的文件
有的时候插入成功,有的时候会提示我
Can't get stat of '/usr/local/mysql/var/NetCenter_Cache/FileCahce_HttpDown.Dat' (Errcode: 2),内容:
LOAD DATA INFILE './NetCenter_Cache/FileCahce_HttpDown.Dat' INTO TABLE `data_httpdown_2013-07-24` (`probe_id`,`src_mac`,`dst_mac`,`src_ip`,`dst_ip`,`src_name`,`dst_name`,`dst_equip_type`,`dst_app_id`,`ip_version`,`ip_tunnel`,`src_port`,`dst_port`,`proto_type`,`proto_sub_type`,`operation`,`log_type`,`log_level`,`opstatus`,`rule_id`,`group_id`,`rulekeyword`,`domain`,`url`,`summary`,`content`,`file_name`,`log_time`,`str_time`)我是用的ROOT权限运行的这个程序,这几个文件都是通过我的程序来创建的,怎么解决呢?

解决方案 »

  1.   

    这个文件必须放在mysql这个用户可以访问的目录才行
      

  2.   

    mysql 这个用户?我看我电脑上没这个用户啊。。
      

  3.   

    哦 这么目录被改了,我指向的相对路径目录应该是
    /usr/local/netaudit/NetCenter_Service/NetCenter_Release/NetCenter_Cache 这个目录下才对
    为什么会变成/usr/local/mysql/var/NetCenter_Cache/ 这个目录呢?
      

  4.   

    改成
    load data LOCAL infile 试试
      

  5.   

    不行,提示
    数据库执行错误:The used command is not allowed with this MySQL version,内容:
    LOAD DATA LOCAL INFILE './NetCenter_Cache/FileCahce_HttpDown.Dat' INTO TABLE `data_httpdown_2013-07-24` (`probe_id`,`src_mac`,`dst_mac`,`src_ip`,`dst_ip`,`src_name`,`dst_name`,`dst_equip_type`,`dst_app_id`,`ip_version`,`ip_tunnel`,`src_port`,`dst_port`,`proto_type`,`proto_sub_type`,`operation`,`log_type`,`log_level`,`opstatus`,`rule_id`,`group_id`,`rulekeyword`,`domain`,`url`,`summary`,`content`,`file_name`,`log_time`,`str_time`)
      

  6.   

    source中的当前路径是你输入mysql命令进入mysql之前的位置,你两次进入mysql是的目录不同导致的