[+] Perl - DBD::mysql b

Potrzebujesz pomocy z C, C++, perl, python, itp.
Awatar użytkownika
sponsoriada
Beginner
Posty: 149
Rejestracja: 03 października 2010, 22:58
Lokalizacja: Płock

[+] Perl - DBD::mysql błąd instalacji

Post autor: sponsoriada »

Witam.
Chciałem zacząć przygodę z Perlem, jednak na samym początku mam problem.
Polega on na tym, że nie mogę zainstalować modułu DBD:mysql.

Poniżej logi:

Kod: Zaznacz cały

root@espons:/usr/lib/mysql/plugin# perl -MCPAN -e 'install DBD::mysql'
CPAN: Storable loaded ok (v2.20)
Reading '/root/.cpan/Metadata'
  Database was generated on Mon, 06 Feb 2012 10:11:33 GMT
Running install for module 'DBD::mysql'
Running make for C/CA/CAPTTOFU/DBD-mysql-4.020.tar.gz
CPAN: Digest::SHA loaded ok (v5.70)
CPAN: Compress::Zlib loaded ok (v2.048)
Checksum for /root/.cpan/sources/authors/id/C/CA/CAPTTOFU/DBD-mysql-4.020.tar.gz ok
CPAN: Archive::Tar loaded ok (v1.82)
DBD-mysql-4.020/
DBD-mysql-4.020/ChangeLog
DBD-mysql-4.020/constants.h
DBD-mysql-4.020/dbdimp.c
DBD-mysql-4.020/dbdimp.h
DBD-mysql-4.020/eg/
DBD-mysql-4.020/eg/bug14979.pl
DBD-mysql-4.020/eg/bug21028.pl
DBD-mysql-4.020/eg/bug30033.pl
DBD-mysql-4.020/eg/bug30033pg.pl
DBD-mysql-4.020/eg/decimal_test.pl
DBD-mysql-4.020/eg/issue21946.pl
DBD-mysql-4.020/eg/prepare_memory_usage.pl
DBD-mysql-4.020/eg/proc_example1.pl
DBD-mysql-4.020/eg/proc_example2.pl
DBD-mysql-4.020/eg/proc_example2a.pl
DBD-mysql-4.020/eg/proc_example2b.pl
DBD-mysql-4.020/eg/proc_example3.pl
DBD-mysql-4.020/eg/proc_example4.pl
DBD-mysql-4.020/INSTALL.html
DBD-mysql-4.020/lib/
DBD-mysql-4.020/lib/Bundle/
DBD-mysql-4.020/lib/Bundle/DBD/
DBD-mysql-4.020/lib/Bundle/DBD/mysql.pm
DBD-mysql-4.020/lib/DBD/
DBD-mysql-4.020/lib/DBD/mysql/
DBD-mysql-4.020/lib/DBD/mysql/GetInfo.pm
DBD-mysql-4.020/lib/DBD/mysql/INSTALL.pod
DBD-mysql-4.020/lib/DBD/mysql.pm
DBD-mysql-4.020/Makefile.PL
DBD-mysql-4.020/Makefile.PL.embedded
DBD-mysql-4.020/MANIFEST
DBD-mysql-4.020/MANIFEST.SKIP
DBD-mysql-4.020/META.yml
DBD-mysql-4.020/myld
DBD-mysql-4.020/mysql.xs
DBD-mysql-4.020/README
DBD-mysql-4.020/t/
DBD-mysql-4.020/t/00base.t
DBD-mysql-4.020/t/10connect.t
DBD-mysql-4.020/t/20createdrop.t
DBD-mysql-4.020/t/25lockunlock.t
DBD-mysql-4.020/t/29warnings.t
DBD-mysql-4.020/t/30insertfetch.t
DBD-mysql-4.020/t/31insertid.t
DBD-mysql-4.020/t/32insert_error.t
DBD-mysql-4.020/t/35limit.t
DBD-mysql-4.020/t/35prepare.t
DBD-mysql-4.020/t/40bindparam.t
DBD-mysql-4.020/t/40bindparam2.t
DBD-mysql-4.020/t/40blobs.t
DBD-mysql-4.020/t/40catalog.t
DBD-mysql-4.020/t/40keyinfo.t
DBD-mysql-4.020/t/40listfields.t
DBD-mysql-4.020/t/40nulls.t
DBD-mysql-4.020/t/40nulls_prepare.t
DBD-mysql-4.020/t/40numrows.t
DBD-mysql-4.020/t/40server_prepare.t
DBD-mysql-4.020/t/40server_prepare_error.t
DBD-mysql-4.020/t/40types.t
DBD-mysql-4.020/t/41bindparam.t
DBD-mysql-4.020/t/41blobs_prepare.t
DBD-mysql-4.020/t/42bindparam.t
DBD-mysql-4.020/t/50chopblanks.t
DBD-mysql-4.020/t/50commit.t
DBD-mysql-4.020/t/51bind_type_guessing.t
DBD-mysql-4.020/t/52comment.t
DBD-mysql-4.020/t/53comment.t
DBD-mysql-4.020/t/55utf8.t
DBD-mysql-4.020/t/60leaks.t
DBD-mysql-4.020/t/65types.t
DBD-mysql-4.020/t/70takeimp.t
DBD-mysql-4.020/t/71impdata.t
DBD-mysql-4.020/t/75supported_sql.t
DBD-mysql-4.020/t/76multi_statement.t
DBD-mysql-4.020/t/80procs.t
DBD-mysql-4.020/t/85init_command.t
DBD-mysql-4.020/t/86_bug_36972.t
DBD-mysql-4.020/t/lib.pl
DBD-mysql-4.020/t/mem_leak.pl
DBD-mysql-4.020/t/mysql.dbtest
DBD-mysql-4.020/t/mysql.mtest
DBD-mysql-4.020/TODO
CPAN: File::Temp loaded ok (v0.22)
CPAN: Parse::CPAN::Meta loaded ok (v1.4401)
CPAN: CPAN::Meta loaded ok (v2.120351)
CPAN: Module::CoreList loaded ok (v2.18)


  CPAN.pm: Building C/CA/CAPTTOFU/DBD-mysql-4.020.tar.gz


Can't exec "mysql_config": Nie ma takiego pliku ani katalogu at Makefile.PL line 83.


Cannot find the file 'mysql_config'! Your execution PATH doesn't seem
not contain the path to mysql_config. Resorting to guessed values!
Can't exec "mysql_config": Nie ma takiego pliku ani katalogu at Makefile.PL line 478.
Can't find mysql_config. Use --mysql_config option to specify where mysql_config is located
Can't exec "mysql_config": Nie ma takiego pliku ani katalogu at Makefile.PL line 478.
Can't find mysql_config. Use --mysql_config option to specify where mysql_config is located
Can't exec "mysql_config": Nie ma takiego pliku ani katalogu at Makefile.PL line 478.
Can't find mysql_config. Use --mysql_config option to specify where mysql_config is located




PLEASE NOTE:


For 'make test' to run properly, you must ensure that the
database user 'root' can connect to your MySQL server
and has the proper privileges that these tests require such
as 'drop table', 'create table', 'drop procedure', 'create procedure'
as well as others.


mysql> grant all privileges on test.* to 'root'@'localhost' identified by 's3kr1t';


You can also optionally set the user to run 'make test' with:


perl Makefile.PL --testuser=username


Can't exec "mysql_config": Nie ma takiego pliku ani katalogu at Makefile.PL line 478.
Can't find mysql_config. Use --mysql_config option to specify where mysql_config is located
Can't exec "mysql_config": Nie ma takiego pliku ani katalogu at Makefile.PL line 478.
Can't find mysql_config. Use --mysql_config option to specify where mysql_config is located
Can't exec "mysql_config": Nie ma takiego pliku ani katalogu at Makefile.PL line 478.
Can't find mysql_config. Use --mysql_config option to specify where mysql_config is located
Failed to determine directory of mysql.h. Use


  perl Makefile.PL --cflags=-I<dir>


to set this directory. For details see the INSTALL.html file,
section "C Compiler flags" or type


  perl Makefile.PL --help
Warning: No success on command[/usr/bin/perl Makefile.PL INSTALLDIRS=site]
'YAML' not installed, will not store persistent state
  CAPTTOFU/DBD-mysql-4.020.tar.gz
  /usr/bin/perl Makefile.PL INSTALLDIRS=site -- NOT OK
Running make test
  Make had some problems, won't test
Running make install
  Make had some problems, won't install
Could not read metadata file. Falling back to other methods to determine prerequisites


mariaczi
Member
Posty: 1343
Rejestracja: 08 lutego 2008, 12:58
Lokalizacja: localhost@śląskie

Post autor: mariaczi »

Brakujący Ci mysql_config znajduje się w pakiecie libmysqlclient-dev. Masz ten pakiet zainstalowany?
Awatar użytkownika
sponsoriada
Beginner
Posty: 149
Rejestracja: 03 października 2010, 22:58
Lokalizacja: Płock

Post autor: sponsoriada »

Udało się, super.
Mam jeszcze jedną prośbę. Chciałbym wyciągnąć wszystkie dane z tabeli.
Do pojedynczego wiersza jest fetchrow_arrayref, jak zrobić żeby wyciągnęło mi wszystkie wiersze z tabeli i wrzuciło do tablicy?
mariaczi
Member
Posty: 1343
Rejestracja: 08 lutego 2008, 12:58
Lokalizacja: localhost@śląskie

Post autor: mariaczi »

fetchall_arrayref? Warto zaglądać do dokumentacji ;)
Awatar użytkownika
sponsoriada
Beginner
Posty: 149
Rejestracja: 03 października 2010, 22:58
Lokalizacja: Płock

Post autor: sponsoriada »

Dziękuję. Przesiadłem się z PHP na Perla i jak na razie średnio mi to idzie.
Może masz parę ciekawych linków, żeby się lepiej zapoznać z możliwościami Perla?
Z jakiej dokumentacji korzystasz?
mariaczi
Member
Posty: 1343
Rejestracja: 08 lutego 2008, 12:58
Lokalizacja: localhost@śląskie

Post autor: mariaczi »

Zawsze aktualna: perldoc. Następnie dokumentacja rozszerzeń, z których chcę skorzystać i "podpieranie" się google :) (zapytania zadawane w języku angielskim)
ODPOWIEDZ