[英]Perl Compilation Errors Compilation failed in require at
突然之間,我們的日志中出現了CGI錯誤,並且其中一個頁面無法正常工作。 我檢查了語法,但找不到錯誤。任何幫助將不勝感激。
這是我們在瀏覽器中遇到的錯誤:
Archive.pl:DBD :: mysql :: st執行失敗:/home/mnin/MNN_Code/Prod/lib/MySQL.lib第52行,對表'needs'的用戶'mnin_user'@'localhost'的SELECT命令被拒絕。編譯在archive.pl第9行中的require失敗。
MySQL.lib的第47-61行顯示為:
sub RunSQL {
## Executes an sql statement on the database.
my $sqlquery = shift;
$sth = $dbh->prepare($sqlquery);
$sth->execute(); #this is line 52
$MySQL_LastQuery = $sqlquery;
if ($sth->err()) {
return 1, $sth->errstr();
} else {
return 0, $sth->rows;
}
}
這是第10行的Archvie.pl
#!/usr/bin/perl
use CGI::Carp qw(fatalsToBrowser); # uncommenting this during debugging phase may be helpful
#use HTML::Template;
#use Win32::ODBC;
read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
if($ENV{'REQUEST_METHOD'} eq "POST") { @pairs = split(/&/, $buffer);}
else { @pairs = split(/&/, $ENV{'QUERY_STRING'});}
盡管我不認為問題出在Archive.pl中,因為這些編譯錯誤顯示在多個位置。
表'needs'的用戶'mnin_user'@'localhost'的SELECT命令被拒絕
這表明您只是缺少執行查詢所需的權限。 至少,您需要以下命令授予的權限:
GRANT SELECT ON `needs` TO 'mnin_user'@'localhost';
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.