Archive for March, 2005

一个未完成的MYSQL管理程序perl gui

Wednesday, March 23rd, 2005

#!/usr/bin/perl

use strict;
use warnings;
use Tk;
use Tk::HList;
use Tk::Adjuster;
use DBI;
use encoding ‘euc-cn’;

my ($login,$server,$username,$password,$database,$db,$sql,$query,$percent_done,@tmp);
my $mw = MainWindow->new(-title=>”Mysql Easy”);
$mw->minsize(600,400);
#$mw->resizable(0,0);

#frame
my $menubar=$mw->Frame(-relief=>’groove’, -borderwidth=>’2′,)
->pack(-side=>’top’, -fill=>’x');
my $bottom=$mw->Frame(-relief=>’groove’, -borderwidth=>’1′,)
->pack(-side=>’bottom’, -fill=>’x');
my $left=$mw->Frame(-relief=>’groove’, -borderwidth=>’0′,)
->pack(-side=>’left’, -fill=>’both’);
my $aj = $mw->Adjuster(-widget => $left, -side => ‘left’)
->pack(-side=>’left’, -fill=>’y');
my $right=$mw->Frame(-relief=>’groove’, -borderwidth=>’1′,)
->pack(-side=>’right’, -fill=>’both’,-expand=>’1′);
#menu
my $mb_conn=$menubar->Menubutton(-text=>’Connect’)->pack(-side =>’left’);
$mb_conn->command(-label=>’Connect’, -command=> \&login);
$mb_conn->command(-label=>’Disconnect’, -command=> \&saveDBM);
$mb_conn->separator();
$mb_conn->command(-label=>’Exit’, -command=> sub{ exit; });

my $mb_view=$menubar->Menubutton(-text=>’View’)->pack(-side=>’left’);
$mb_view->command(-label=>’Undo’, -command=> \&undo);
$mb_view->command(-label=>’Find’, -command=> \&findKey);

my $mb_edit=$menubar->Menubutton(-text=>’Edit’)->pack(-side=>’left’);
$mb_edit->command(-label=>’About DBMedit’, -command=> \&about);

my $mb_sqlc=$menubar->Menubutton(-text=>’SQL’)->pack(-side=>’left’);
$mb_sqlc->command(-label=>’SQL_EXEC’, -command=> \&about);

my $mb_help=$menubar->Menubutton(-text=>’Help’)->pack(-side=>’left’);
$mb_help->command(-label=>’About DBMedit’, -command=> \&about);
#HList
my $datalist = $left->Scrolled(“HList”,-selectmode=>’multiple’,-highlightthickness=>0,
-scrollbars=>’e',-height=>8,-header=>1,-background=>’white’,-command=>\&showtables)
->pack(-fill=>’x');
$datalist->header(‘create’, 0, -text=> ‘database :’);
my $tablelist = $left->Scrolled(“HList”,-selectmode=>’multiple’,-highlightthickness=>0,
-scrollbars=>’e',-header=>1,-background=>’white’,-command=>\&viewdata)
->pack(-fill=>’both’,-expand=>’1′);
$tablelist->header(‘create’, 0, -text=> ‘table :’);
my $list = $right->Scrolled(“HList”,-selectmode=>’multiple’,-highlightthickness=>0,
-scrollbars=>’se’,-head=>1,-columns=>7,-background=>’white’,-command=>\&showlist)
->pack(-fill=>’both’,-expand=>’1′);

my @headers = (“Field”,”Type”,”Null”,”Key”,”Default”,”Extra”); #标题
foreach my $x(0..6){
$list->header(‘create’,$x,-text=> $headers[$x],);
}
#foot
my $foot = $bottom->Label(-text=>”登陆先…”)->pack(-side=>’left’);
MainLoop;

sub login {
$login=$mw->Toplevel(-title=> ‘Login’);
$login->resizable(0,0);
$login->Label(-text=>’Host:’)->grid(-row=> 2, -column=> 1, -sticky=> ‘w’);
$server=$login->Entry()->grid(-row=>2, -column=> 2);
$login->Label(-text=>’Username:’)->grid(-row=> 3, -column=> 1, -sticky=> ‘w’);
$username=$login->Entry()->grid(-row=>3, -column=> 2);
$login->Label(-text=>’Password:’)->grid(-row=> 4, -column=> 1, -sticky=> ‘w’);
$password=$login->Entry(-show=> ‘*’)->grid(-row=>4, -column=> 2);
$login->Label(-text=>’Database:’)->grid(-row=> 5, -column=> 1, -sticky=> ‘w’);
$database=$login->Entry()->grid(-row=>5, -column=> 2);

my $connect=$login->Button(-text=> ‘Connect’, -command=> \&connect)
->grid(-row=>6, -column=> 1, -columnspan=> 2, -sticky=> ‘ew’);
$login->Button(-text=> ‘Quit’, -command=> sub{ $login->destroy; })
->grid(-row=> 7, -column=> 1, -columnspan=> 2, -sticky=> ‘ew’);
$server->insert(0,”localhost”);
$username->insert(0,”root”);
$password->insert(0,”123qwe”);
$database->insert(0,”mysql”);
}
sub connect{
my $hostname = $server->get;
my $username = $username->get;
my $password = $password->get;
my $database = $database->get;

$db = DBI->connect(“DBI:mysql:$database”,$username,$password);
if ($DBI::errstr){
$login->messageBox(-type=>”OK”,-title=>”ERROR”,-message=>”$DBI::errstr”,-icon=>”error”);
}else{
$sql = qq{show databases};
$query = $db->prepare($sql);

$query->execute();

my $result;
while ($result = $query->fetchrow) {
$datalist->add($result, -text=>$result);
}
$query->finish();
$login->destroy;
}
}

sub showtables{
my @tablename = $datalist->selectionGet();
$sql = qq{use $tablename[0]};
$query = $db->prepare($sql);
$query->execute();
$query->finish();
$tablelist->delete(‘all’);  #清除TABLES列表
$sql = qq{show tables};
$query = $db->prepare($sql);
$query->execute();
my $result;
while ($result = $query->fetchrow) {
$tablelist->add($result, -text=>$result);
}
$query->finish();
}

sub viewdata{
$list->delete(‘all’);  #清除LIST列表
@tmp =();
my @viewname = $tablelist->selectionGet();
$sql = qq{show columns from $viewname[0]};
$query = $db->prepare($sql);
$query->execute();
my @result;
while (@result = $query->fetchrow) {
push(@tmp,[@result]);
}
#additem
for my $index (0..$#tmp) {
$list->add($index);
for my $textin (0..scalar(@{$tmp[$index]}-1)) {
$list->itemCreate($index, $textin,-text => $tmp[$index]->[$textin]);
}
}
$query->finish();
}

sub showlist{
my @listindex = $list->selectionGet;
my $listedit=$mw->Toplevel(-title=> ‘Edit’);
$listedit->resizable(0,0);
$listedit->Label(-text=>’Field :’)->grid(-row=> 1, -column=> 1, -sticky=> ‘w’);
$listedit->Label(-text=>’Type :’)->grid(-row=> 1, -column=> 2, -sticky=> ‘w’);
$listedit->Label(-text=>’Null :’)->grid(-row=> 1, -column=> 3, -sticky=> ‘w’);
$listedit->Label(-text=>’Key :’)->grid(-row=> 1, -column=> 4, -sticky=> ‘w’);
$listedit->Label(-text=>’Default :’)->grid(-row=> 1, -column=> 5, -sticky=> ‘w’);
$listedit->Label(-text=>’Extra :’)->grid(-row=> 1, -column=> 6, -sticky=> ‘w’);
$server=$listedit->Entry(-text=>$tmp[$listindex[0]]->[0])
->grid(-row=>2, -column=> 1);
$server=$listedit->Entry(-text=>$tmp[$listindex[0]]->[1])
->grid(-row=>2, -column=> 2);
$server=$listedit->Entry(-text=>$tmp[$listindex[0]]->[2])
->grid(-row=>2, -column=> 3);
$server=$listedit->Entry(-text=>$tmp[$listindex[0]]->[3])
->grid(-row=>2, -column=> 4);
$server=$listedit->Entry(-text=>$tmp[$listindex[0]]->[4])
->grid(-row=>2, -column=> 5);
$server=$listedit->Entry(-text=>$tmp[$listindex[0]]->[5])
->grid(-row=>2, -column=> 6);
$listedit->Button(-text=>’OK’,-command=>sub{ $listedit->destroy; })
->grid(-row=>3,-column=>5,-sticky=> ‘ew’);
$listedit->Button(-text=>’Cancel’,-command=>sub{ $listedit->destroy; })
->grid(-row=>3,-column=>6,-sticky=> ‘ew’);
}

sub about {
my $about=$mw->messageBox(-type=>’OK’, -title=>’About..’,
-message=>”Mysql Easy by jondy \n QQ:222411″);
}

Trubo Linux 10下为Perl安装DBD::Mysql模块

Tuesday, March 22nd, 2005

Trubo Linux 10下为Perl安装DBD::Mysql模块

by jondy(jondy@tom.com)

用到以前写的Windows下的perl连mysql的脚本才发现
没有安DBI模块,在Windows下安装模块用PPM就可以了,很方便
而在linux没有ppm这个文件
linux下使用perl -MCPAN来安装模块,具体用法查看帮助
perl -MCPAN -h
perl -MCPAN 初次使用时提示设置,基本上一路回车到选择区域和国家
设置保存在
/usr/lib/perl5/5.8.0/CPAN/Config.pm
设置可以修改此文件或干脆删除它再运行perl -MCAPN -e shell重新设置
下边开始安装
perl -MCPAN -e shell
首先要安装DBI模块,这个在trubolinux10下没问题,
cpan> install DBI
然后安装DBD::mysql模块
cpan> install DBD::mysql
提示出错退出:
t/mysql2.t         255 65280    ??   ??       %  ??
1 test skipped.
Failed 16/18 test scripts, 11.11% okay. 723/730 subtests failed, 0.96% okay.
make: *** [test_dynamic] 错误 2
/usr/bin/make test — NOT OK
Running make install
make test had returned bad status, won’t install without force
向上找发现
Can’t exec “mysql_config”: 没有那个文件或目录 at Makefile.PL line 174.
readline() on closed filehandle PIPE at Makefile.PL line 176.
cpan> q
退出
[root@localhost sources]#vim /root/.cpan/build/DBD-mysql-2.9004/Makefile.PL
输入/mysql_config查找发现
open(PIPE, “mysql_config –$param |”);
open(PIPE, “/usr/local/mysql/bin/mysql_config –$param |”); #修改此处,
运行
[root@localhost sources]#cd /root/.cpan/build/DBD-mysql-2.9004
[root@localhost sources]#perl Makefile.PL –h
Usage: perl /root/.cpan/build/DBD-mysql-2.9004/Makefile.PL [options]

Possible options are:

–cflags=       Use  for running the C compiler; defaults
to the value of “mysql_config –cflags”
–libs=          Use  for running the linker; defaults
to the value of “mysql_config –libs”
–testdb=          Use the database  for running the test suite;
defaults to test
–testuser=      Use the username  for running the test suite;
defaults to no username
–testpassword=   Use the password  for running the test suite;
defaults to no password
–testhost=      Use  as a database server for running the
test suite; defaults to localhost.
–testport=      Use  as the port number of the database;
by default the port number is choosen from the
mysqlclient library
–nocatchstderr        Supress using the “myld” script that redirects
STDERR while running the linker.
–nofoundrows          Change the behavoiur of $sth->rows() so that it
returns the number of rows physically modified
instead of the rows matched
–ssl                  Enable SSL support
–help                 Print this message and exit

All options may be configured on the command line. If they are
not present on the command line, then mysql_config is called:

mysql_config –cflags
mysql_config –libs
mysql_config –testdb

and so on. See the INSTALL.html file for details.
按提示输入
[root@localhost sources]#perl Makefile.PL –testuser=root –testpassword=password
输入数据库的用户名和密码
这次没有提示错误,然后输入
[root@localhost sources]#make
[root@localhost sources]#make test
[root@localhost sources]#make install
完成安装;

下边是安装时出现错误的完整信息

Running install for module DBD::mysql
Running make for R/RU/RUDY/DBD-mysql-2.9004.tar.gz
CPAN: Digest::MD5 loaded ok
CPAN: Compress::Zlib loaded ok
Checksum for /root/.cpan/sources/authors/id/R/RU/RUDY/DBD-mysql-2.9004.tar.gz ok
Scanning cache /root/.cpan/build for sizes
Deleting from cache: /root/.cpan/build/Msql-Mysql-modules-1.2219 (11.4>10.0 MB)
Deleting from cache: /root/.cpan/build/Data-Dumper-2.121 (10.7>10.0 MB)
Deleting from cache: /root/.cpan/build/Net-Telnet-3.03 (10.2>10.0 MB)
DBD-mysql-2.9004/
DBD-mysql-2.9004/t/
DBD-mysql-2.9004/t/mysql2.t
DBD-mysql-2.9004/t/akmisc.t
DBD-mysql-2.9004/t/60leaks.t
DBD-mysql-2.9004/t/10dsnlist.t
DBD-mysql-2.9004/t/ak-dbd.t
DBD-mysql-2.9004/t/50chopblanks.t
DBD-mysql-2.9004/t/mysql.t
DBD-mysql-2.9004/t/lib.pl
DBD-mysql-2.9004/t/40blobs.t
DBD-mysql-2.9004/t/40nulls.t
DBD-mysql-2.9004/t/insertid.t
DBD-mysql-2.9004/t/40listfields.t
DBD-mysql-2.9004/t/40bindparam.t
DBD-mysql-2.9004/t/mysql.dbtest
DBD-mysql-2.9004/t/dbdadmin.t
DBD-mysql-2.9004/t/20createdrop.t
DBD-mysql-2.9004/t/00base.t
DBD-mysql-2.9004/t/30insertfetch.t
DBD-mysql-2.9004/t/40numrows.t
DBD-mysql-2.9004/t/50commit.t
DBD-mysql-2.9004/t/mysql.mtest
DBD-mysql-2.9004/MANIFEST
DBD-mysql-2.9004/myld
DBD-mysql-2.9004/dbdimp.c
DBD-mysql-2.9004/lib/
DBD-mysql-2.9004/lib/DBD/
DBD-mysql-2.9004/lib/DBD/mysql/
DBD-mysql-2.9004/lib/DBD/mysql/GetInfo.pm
DBD-mysql-2.9004/lib/DBD/mysql/INSTALL.pod
DBD-mysql-2.9004/lib/DBD/mysql.pm
DBD-mysql-2.9004/lib/Mysql/
DBD-mysql-2.9004/lib/Mysql/Statement.pm
DBD-mysql-2.9004/lib/Bundle/
DBD-mysql-2.9004/lib/Bundle/DBD/
DBD-mysql-2.9004/lib/Bundle/DBD/mysql.pm
DBD-mysql-2.9004/lib/Mysql.pm
DBD-mysql-2.9004/dbdimp.h
DBD-mysql-2.9004/mysql.xs
DBD-mysql-2.9004/MANIFEST.SKIP
DBD-mysql-2.9004/README
DBD-mysql-2.9004/INSTALL.html
DBD-mysql-2.9004/META.yml
DBD-mysql-2.9004/Makefile.PL
DBD-mysql-2.9004/ChangeLog
DBD-mysql-2.9004/constants.h
DBD-mysql-2.9004/TODO
Removing previously used /root/.cpan/build/DBD-mysql-2.9004

CPAN.pm: Going to build R/RU/RUDY/DBD-mysql-2.9004.tar.gz

Can’t exec “mysql_config”: 没有那个文件或目录 at Makefile.PL line 174.
readline() on closed filehandle PIPE at Makefile.PL line 176.
Can’t exec “mysql_config”: 没有那个文件或目录 at Makefile.PL line 174.
readline() on closed filehandle PIPE at Makefile.PL line 176.
Can’t exec “mysql_config”: 没有那个文件或目录 at Makefile.PL line 174.
readline() on closed filehandle PIPE at Makefile.PL line 176.
Can’t exec “mysql_config”: 没有那个文件或目录 at Makefile.PL line 174.
readline() on closed filehandle PIPE at Makefile.PL line 176.
Can’t exec “mysql_config”: 没有那个文件或目录 at Makefile.PL line 174.
readline() on closed filehandle PIPE at Makefile.PL line 176.
Can’t exec “mysql_config”: 没有那个文件或目录 at Makefile.PL line 174.
readline() on closed filehandle PIPE at Makefile.PL line 176.
Can’t exec “mysql_config”: 没有那个文件或目录 at Makefile.PL line 174.
readline() on closed filehandle PIPE at Makefile.PL line 176.
Can’t exec “mysql_config”: 没有那个文件或目录 at Makefile.PL line 174.
readline() on closed filehandle PIPE at Makefile.PL line 176.
Can’t exec “mysql_config”: 没有那个文件或目录 at Makefile.PL line 174.
readline() on closed filehandle PIPE at Makefile.PL line 176.
I will use the following settings for compiling and testing:

cflags        (guessed) = -I/usr/local/mysql/include
libs          (guessed) = -L/usr/local/mysql/lib -lmysqlclient -lz -lgz
nocatchstderr (default) = 0
nofoundrows   (default) = 0
ssl           (guessed) = 0
testdb        (default) = test
testhost      (default) =
testpassword  (default) =
testuser      (default) =

To change these settings, see ‘perl Makefile.PL –help’ and
‘perldoc INSTALL’.

Checking if your kit is complete…
Looks good
Note (probably harmless): No library found for -lgz
Using DBI 1.47 (for perl 5.008 on i386-linux) installed in /usr/lib/perl5/site_p
erl/5.8.0/i386-linux/auto/DBI/
Writing Makefile for DBD::mysql
cp lib/DBD/mysql/GetInfo.pm blib/lib/DBD/mysql/GetInfo.pm
cp lib/DBD/mysql.pm blib/lib/DBD/mysql.pm
cp lib/DBD/mysql/INSTALL.pod blib/lib/DBD/mysql/INSTALL.pod
cp lib/Mysql.pm blib/lib/Mysql.pm
cp lib/Mysql/Statement.pm blib/lib/Mysql/Statement.pm
cp lib/Bundle/DBD/mysql.pm blib/lib/Bundle/DBD/mysql.pm
cc -c  -I/usr/lib/perl5/site_perl/5.8.0/i386-linux/auto/DBI/ -I/usr/local/mysql/
include -DDEBUGGING -fno-strict-aliasing -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS
=64 -O2 -g -march=i586   -DVERSION=\”2.9004\” -DXS_VERSION=\”2.9004\” -fPIC “-I/
usr/lib/perl5/5.8.0/i386-linux/CORE”   dbdimp.c
/usr/bin/perl -p -e “s/~DRIVER~/mysql/g” /usr/lib/perl5/site_perl/5.8.0/i386-lin
ux/auto/DBI//Driver.xst > mysql.xsi
/usr/bin/perl /usr/lib/perl5/5.8.0/ExtUtils/xsubpp  -typemap /usr/lib/perl5/5.8.
0/ExtUtils/typemap  mysql.xs > mysql.xsc && mv mysql.xsc mysql.c
Warning: duplicate function definition ‘do’ detected in mysql.xs, line 196
Warning: duplicate function definition ‘rows’ detected in mysql.xs, line 294
cc -c  -I/usr/lib/perl5/site_perl/5.8.0/i386-linux/auto/DBI/ -I/usr/local/mysql/
include -DDEBUGGING -fno-strict-aliasing -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS
=64 -O2 -g -march=i586   -DVERSION=\”2.9004\” -DXS_VERSION=\”2.9004\” -fPIC “-I/
usr/lib/perl5/5.8.0/i386-linux/CORE”   mysql.c
Running Mkbootstrap for DBD::mysql ()
chmod 644 mysql.bs
rm -f blib/arch/auto/DBD/mysql/mysql.so
LD_RUN_PATH=”/usr/local/mysql/lib:/usr/lib” /usr/bin/perl myld cc  -shared -L/us
r/local/lib dbdimp.o mysql.o  -o blib/arch/auto/DBD/mysql/mysql.so   -L/usr/loca
l/mysql/lib -lmysqlclient -lz
chmod 755 blib/arch/auto/DBD/mysql/mysql.so
cp mysql.bs blib/arch/auto/DBD/mysql/mysql.bs
chmod 644 blib/arch/auto/DBD/mysql/mysql.bs
Manifying blib/man3/DBD::mysql.3
Manifying blib/man3/Mysql.3
Manifying blib/man3/DBD::mysql::INSTALL.3
Manifying blib/man3/Bundle::DBD::mysql.3
/usr/bin/make  — OK
Running make test
PERL_DL_NONLAZY=1 /usr/bin/perl “-MExtUtils::Command::MM” “-e” “test_harness(0,
‘blib/lib’, ‘blib/arch’)” t/*.t
t/00base………..ok
t/10dsnlist……..DBI connect(‘test’,”,…) failed: Access denied for user ‘ro
ot’@'localhost’ (using password: NO) at t/10dsnlist.t line 45
Cannot connect: Access denied for user ‘root’@'localhost’ (using password: NO)
Either your server is not up and running or you have no
permissions for acessing the DSN DBI:mysql:test.
This test requires a running server and write permissions.
Please make sure your server is running and you have
permissions, then retry.
t/10dsnlist……..dubious
Test returned status 10 (wstat 2560, 0xa00)
DIED. FAILED tests 1-9
Failed 9/9 tests, 0.00% okay
t/20createdrop…..DBI connect(‘test’,”,…) failed: Access denied for user ‘ro
ot’@'localhost’ (using password: NO) at t/20createdrop.t line 45
Cannot connect: Access denied for user ‘root’@'localhost’ (using password: NO)
Either your server is not up and running or you have no
permissions for acessing the DSN DBI:mysql:test.
This test requires a running server and write permissions.
Please make sure your server is running and you have
permissions, then retry.
t/20createdrop…..dubious
Test returned status 10 (wstat 2560, 0xa00)
DIED. FAILED tests 1-5
Failed 5/5 tests, 0.00% okay
t/30insertfetch….DBI connect(‘test’,”,…) failed: Access denied for user ‘ro
ot’@'localhost’ (using password: NO) at t/30insertfetch.t line 48
Cannot connect: Access denied for user ‘root’@'localhost’ (using password: NO)
Either your server is not up and running or you have no
permissions for acessing the DSN DBI:mysql:test.
This test requires a running server and write permissions.
Please make sure your server is running and you have
permissions, then retry.
t/30insertfetch….dubious
Test returned status 10 (wstat 2560, 0xa00)
DIED. FAILED tests 1-11
Failed 11/11 tests, 0.00% okay
t/40bindparam……DBI connect(‘test’,”,…) failed: Access denied for user ‘ro
ot’@'localhost’ (using password: NO) at t/40bindparam.t line 64
Cannot connect: Access denied for user ‘root’@'localhost’ (using password: NO)
Either your server is not up and running or you have no
permissions for acessing the DSN DBI:mysql:test.
This test requires a running server and write permissions.
Please make sure your server is running and you have
permissions, then retry.
t/40bindparam……dubious
Test returned status 10 (wstat 2560, 0xa00)
DIED. FAILED tests 1-28
Failed 28/28 tests, 0.00% okay
t/40blobs……….DBI connect(‘test’,”,…) failed: Access denied for user ‘ro
ot’@'localhost’ (using password: NO) at t/40blobs.t line 68
Cannot connect: Access denied for user ‘root’@'localhost’ (using password: NO)
Either your server is not up and running or you have no
permissions for acessing the DSN DBI:mysql:test.
This test requires a running server and write permissions.
Please make sure your server is running and you have
permissions, then retry.
t/40blobs……….dubious
Test returned status 10 (wstat 2560, 0xa00)
DIED. FAILED tests 1-11
Failed 11/11 tests, 0.00% okay
t/40listfields…..DBI connect(‘test’,”,…) failed: Access denied for user ‘ro
ot’@'localhost’ (using password: NO) at t/40listfields.t line 57
Cannot connect: Access denied for user ‘root’@'localhost’ (using password: NO)
Either your server is not up and running or you have no
permissions for acessing the DSN DBI:mysql:test.
This test requires a running server and write permissions.
Please make sure your server is running and you have
permissions, then retry.
t/40listfields…..dubious
Test returned status 10 (wstat 2560, 0xa00)
DIED. FAILED tests 1-18
Failed 18/18 tests, 0.00% okay
t/40nulls……….DBI connect(‘test’,”,…) failed: Access denied for user ‘ro
ot’@'localhost’ (using password: NO) at t/40nulls.t line 50
Cannot connect: Access denied for user ‘root’@'localhost’ (using password: NO)
Either your server is not up and running or you have no
permissions for acessing the DSN DBI:mysql:test.
This test requires a running server and write permissions.
Please make sure your server is running and you have
permissions, then retry.
t/40nulls……….dubious
Test returned status 10 (wstat 2560, 0xa00)
DIED. FAILED tests 1-11
Failed 11/11 tests, 0.00% okay
t/40numrows……..DBI connect(‘test’,”,…) failed: Access denied for user ‘ro
ot’@'localhost’ (using password: NO) at t/40numrows.t line 59
Cannot connect: Access denied for user ‘root’@'localhost’ (using password: NO)
Either your server is not up and running or you have no
permissions for acessing the DSN DBI:mysql:test.
This test requires a running server and write permissions.
Please make sure your server is running and you have
permissions, then retry.
t/40numrows……..dubious
Test returned status 10 (wstat 2560, 0xa00)
DIED. FAILED tests 1-25
Failed 25/25 tests, 0.00% okay
t/50chopblanks…..DBI connect(‘test’,”,…) failed: Access denied for user ‘ro
ot’@'localhost’ (using password: NO) at t/50chopblanks.t line 57
Cannot connect: Access denied for user ‘root’@'localhost’ (using password: NO)
Either your server is not up and running or you have no
permissions for acessing the DSN DBI:mysql:test.
This test requires a running server and write permissions.
Please make sure your server is running and you have
permissions, then retry.
t/50chopblanks…..dubious
Test returned status 10 (wstat 2560, 0xa00)
DIED. FAILED tests 1-35
Failed 35/35 tests, 0.00% okay
t/50commit………DBI connect(‘test’,”,…) failed: Access denied for user ‘ro
ot’@'localhost’ (using password: NO) at t/50commit.t line 64
Can’t call method “tables” on an undefined value at t/lib.pl line 216.
t/50commit………dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 1-30
Failed 30/30 tests, 0.00% okay
t/60leaks……….skipped
all skipped: $ENV{SLOW_TESTS} is not set or Proc::ProcessTable not insta
lled
t/ak-dbd………..DBI connect(‘test’,”,…) failed: Access denied for user ‘ro
ot’@'localhost’ (using password: NO) at t/ak-dbd.t line 59
t/ak-dbd………..ok 3/90Can’t call method “tables” on an undefined value at t/
lib.pl line 216.
t/ak-dbd………..dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 1, 4-90
Failed 88/90 tests, 2.22% okay
t/akmisc………..Mysql connect(‘database=test;host=’,”,…) failed: Access de
nied for user ‘root’@'localhost’ (using password: NO) at t/akmisc.t line 140
t/akmisc………..NOK 1Cannot connect: Access denied for user ‘root’@'localhost
‘ (using password: NO)
It looks as if your server is not up and running.
This test requires a running server.
Please make sure your server is running and retry.
t/akmisc………..dubious
Test returned status 10 (wstat 2560, 0xa00)
DIED. FAILED tests 1-351
Failed 351/351 tests, 0.00% okay
t/dbdadmin………DBI connect(‘test’,”,…) failed: Access denied for user ‘ro
ot’@'localhost’ (using password: NO) at t/dbdadmin.t line 74
t/dbdadmin………NOK 1Cannot connect: Access denied for user ‘root’@'localhost
‘ (using password: NO)
Either your server is not up and running or you have no
permissions for acessing the DSN DBI:mysql:test.
This test requires a running server and write permissions.
Please make sure your server is running and you have
permissions, then retry.
t/dbdadmin………dubious
Test returned status 10 (wstat 2560, 0xa00)
DIED. FAILED tests 1-21
Failed 21/21 tests, 0.00% okay
t/insertid………DBI connect(‘test’,”,…) failed: Access denied for user ‘ro
ot’@'localhost’ (using password: NO) at t/insertid.t line 13
t/insertid………dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 1-12
Failed 12/12 tests, 0.00% okay
t/mysql…………Mysql connect(‘database=test;host=’,”,…) failed: Access de
nied for user ‘root’@'localhost’ (using password: NO) at t/mysql.t line 55
not ok 1: Access denied for user ‘root’@'localhost’ (using password: NO)
It looks as if your server is not up and running.
This test requires a running server.
Please make sure your server is running and retry.
t/mysql…………FAILED tests 1-68
Failed 68/68 tests, 0.00% okay
t/mysql2………..Mysql connect(‘database=test;host=’,”,…) failed: Access de
nied for user ‘root’@'localhost’ (using password: NO) at t/mysql2.t line 29
Can’t call method “getserverinfo” on an undefined value at t/mysql2.t line 30.
t/mysql2………..dubious
Test returned status 255 (wstat 65280, 0xff00)
Failed Test       Stat Wstat Total Fail  Failed  List of Failed
——————————————————————————-
t/10dsnlist.t       10  2560     9    9 100.00%  1-9
t/20createdrop.t    10  2560     5    5 100.00%  1-5
t/30insertfetch.t   10  2560    11   11 100.00%  1-11
t/40bindparam.t     10  2560    28   28 100.00%  1-28
t/40blobs.t         10  2560    11   11 100.00%  1-11
t/40listfields.t    10  2560    18   18 100.00%  1-18
t/40nulls.t         10  2560    11   11 100.00%  1-11
t/40numrows.t       10  2560    25   25 100.00%  1-25
t/50chopblanks.t    10  2560    35   35 100.00%  1-35
t/50commit.t       255 65280    30   30 100.00%  1-30
t/ak-dbd.t         255 65280    90   88  97.78%  1 4-90
t/akmisc.t          10  2560   351  351 100.00%  1-351
t/dbdadmin.t        10  2560    21   21 100.00%  1-21
t/insertid.t       255 65280    12   12 100.00%  1-12
t/mysql.t                       68   68 100.00%  1-68
t/mysql2.t         255 65280    ??   ??       %  ??
1 test skipped.
Failed 16/18 test scripts, 11.11% okay. 723/730 subtests failed, 0.96% okay.
make: *** [test_dynamic] 错误 2
/usr/bin/make test — NOT OK
Running make install
make test had returned bad status, won’t install without force

cpan> q