我正在尝试从命令行解析MYSQL慢查询日志。
输入此命令后:
set PATH=G:\xampp\perl\bin\;%PATH%
cd /d G:\xampp\mysql\scripts
perl mysqldumpslow.pl -s c -t 10外壳程序返回错误can't locate strict.pm in @INC (@INC contains: .) at mysqldumpslow.pl at line 8. BEGIN failed
在xampp的perl目录中,只有一个文件perl.exe。
我是否遗漏了perl模块/库?要读取此日志文件,需要执行哪些操作?
发布于 2010-02-03 00:51:34
一种解决方法是在您的perl安装中找到strict.pm的位置,并将该目录添加到PERL5LIB环境变量中,或者使用-I/path/to/strict.pm/directory选项调用perl (请参见perlfaq8: How do I add a directory to my include path (@INC) at runtime?)。
如果您发现更多不满足的依赖项,请继续将目录添加到PERL5LIB或使用其他-I选项,直到您的程序可以运行。
(不过,最终您可能会对此感到厌倦,并修复/重新安装perl。)
更新:查看1.7.3XAMPP发行版,所有的Perl库文件都位于xampp\perl\lib和xampp\perl\site\lib下,因此
perl -IG:/xampp/perl/lib -IG:/xampp/perl/site/lib mysqldumpslow.pl -s c -t 10这可能是您需要做的全部工作。如果您使用的是较旧的XAMPP发行版,请使用YMMV。
发布于 2010-02-03 00:40:38
您的Perl安装似乎以这样或那样的方式搞砸了。我不熟悉xampp,但我很难相信他们只捆绑了perl.exe,而没有捆绑其余的发行版。
在G:\xampp\perl下,应该有lib、site等子目录。
strict是一个核心杂注,它的缺失表明您没有正确安装Perl。
实际上,我刚刚下载了xampp,它确实在xampp\perl下包含了lib和site\lib (缺少文档,但这不是运行xampp\perl脚本所必需的)。
https://stackoverflow.com/questions/2185762
复制相似问题