-1
LINUX MYSQL C API
MYSQL 服务器版本为:5.1.9         
MYSQL 客户端 API 版本:6.0.2

错误是

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)

这条路径是错误的:

/usr/local/mysql/var/NetCenter_Cache/FileCahce_HttpDown.Dat

我正在使用相对路径

./NetCenter_Cache/FileCahce_HttpDown.Dat

路径指向

/usr/local/netaudit/NetCenter_Service/NetCenter_Release/NetCenter_Cache

为什么变了?而且我使用绝对路径没有问题

4

1 回答 1

0

这是因为LOAD DATA由服务器进程(不是客户端)执行,而 MySql 守护进程的当前目录是

/usr/local/mysql/var/

因此使用数据文件的绝对路径,或者如果出于某种原因(我无法想象)你希望它是相对的,那么从

`/usr/local/mysql/var/`

而不是来自

`/usr/local/netaudit/NetCenter_Service/NetCenter_Release/`
于 2013-07-25T03:15:03.017 回答