0
突然間,我們在日誌中顯示CGI錯誤,其中一個頁面無法正常工作。我檢查了語法,但我找不到錯誤..任何幫助將不勝感激。Perl編譯錯誤編譯失敗,需要
這是我們在瀏覽器中出現錯誤:
MySQL.lib的Archive.pl:DBD :: mysql的:: ST執行所失敗:SELECT命令拒絕用戶mnin_user'@ 'localhost' 的表「的需求'在/home/mnin/MNN_Code/Prod/lib/MySQL.lib線52 編譯失敗在archive.pl線需要9.
線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;
}
}
這是Archvie.pl多達10行
#!/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'});}
Althought我不認爲這個問題是在Archive.pl becaue這些編譯錯誤都出現在多個地方。
這不是您的代碼問題,而是您的數據庫配置問題。你讀過錯誤信息了嗎?它說_command拒絕user_。與您的數據庫管理員聯繫。 – simbabque
一般提示:以前工作的代碼突然停止工作時,考慮發生了什麼變化是很好的故障排除。如果代碼沒有改變,則問題可能是由其他原因引起的:數據庫升級,操作系統升級,解釋器升級,服務器移動,配置更改等。考慮更改的內容將有助於縮小問題範圍,即使您不希望在這種情況下,你總是會有如此明確的錯誤信息。 – ThisSuitIsBlackNot