私はRHEL 5.5 64 bit
マシンに乗っています。
マシンにActivePerl 5.10 64 ビットをインストールし、以前に組み込まれた Perl 5.8 64 ビットをアップグレードしました。私は MySQL を稼働させており、私の PHP プロジェクトは MySQL にアクセスできます。Perl ファイルは、DBD を使用して同じデータベースにアクセスする必要がありますが、アクセスできません。私はそれを確認しました:
- 私のMySQLサービスは稼働中です。
- 私のユーザーが存在し、データベースとデータが存在します。
- シェル MySQL クライアントを介してデータベースからデータにアクセスできます。
以下は私のPerlスクリプトです。
#!/usr/bin/perl
use DBI;
$dbh = DBI->connect( "DBI:mysql:go:super218:3306","root","NEWPASSWORD" ) or die "Couldn't connect to database: " . DBI->errstr;
my $sth = $dbh->prepare( "SELECT * FROM phones" )
or die "Can't prepare SQL statement: $DBI::errstr\n";
$sth->execute or die "executing: $stmtA ", $dbh->errstr;
my @row;
while ( @row = $sth->fetchrow_array( ) ) {
print "Row: @row\n";
}
正しいユーザーとパスワードで次のエラーが発生します。
DBI connect('go:super218:3306','root',...) failed: (no error string) at testdb.pl line 6
Couldn't connect to database: at testdb.pl line 6.
ユーザーまたはパスワードが正しくないため、次のエラーが表示されます。
DBI connect('go:super218:3306','root1',...) failed: Access denied for user 'root1'@'localhost' (using password: YES) at testdb.pl line 6
Couldn't connect to database: Access denied for user 'root1'@'localhost' (using password: YES) at testdb.pl line 6.
これを解決するにはどうすればよいですか?問題はMySQLの終わりにあると思います。