DBI-Mysql-treiber für mysqldumper

Irgendwelche Probleme mit XAMPP für Linux? Dann ist hier genau der richtige Ort um nachzufragen.

DBI-Mysql-treiber für mysqldumper

Postby melz » 24. February 2008 22:41

Hallo zusammen,

nach wie vor habe ich Probleme, den DBI-Mysql-treiber zu installieren, der für den Betrieb vom Mysqldumper erforderlich ist. Aus ungeklärten Gründen konnte ich mittlerweile den c-compiler installieren, der wiederum Voraussetzung für die Installation des obigen Treibers ist. Nun läuft mit /opt/lampp/bin/cpan der Befehl install DBD::mysql fast ganz durch. Aber eben nur fast. Am Ende dieses Vorgangs findet das Programm die mysql_config nicht.

Wie kann ich also der Makefile.PL beibringen, wie sie diese Datei findet. Denn sie ist ja vorhanden unter /opt/lampp/bin.
melz
 
Posts: 25
Joined: 21. November 2007 13:58

Postby Scory » 24. February 2008 22:44

Einfach mal /opt/lampp/bin in den PATH aufnehmen, das sollte reichen.
Scory
 

Postby melz » 25. February 2008 08:54

in welchen PATH? welche Datei und wo ist sie? Danke.
melz
 
Posts: 25
Joined: 21. November 2007 13:58

Postby Scory » 25. February 2008 12:02

In die Environment-Variable PATH.
Scory
 

Postby melz » 25. February 2008 13:41

Hallo,

wäre es arg viel verlangt, wenn es etwas genauer ginge? Danke.
melz
 
Posts: 25
Joined: 21. November 2007 13:58

Postby melz » 25. February 2008 14:11

Nun, jetzt habe ich die /root/.bash_profile ergänzt. Scheinbar findet er jetzt die Datei. Trotzdem kommen immer noch jede Menge Fehler:

CPAN: File::Temp loaded ok (v0.16)

CPAN.pm: Going to build C/CA/CAPTTOFU/DBD-mysql-4.006.tar.gz

I will use the following settings for compiling and testing:

cflags (mysql_config) = -I/opt/lampp/include/mysql -I/opt/lampp/include -L/opt/lampp/lib -Wl,--rpath -Wl,/opt/lampp/lib
embedded (mysql_config) =
libs (mysql_config) = -L/opt/lampp/lib/mysql -lmysqlclient -lz -lcrypt -lnsl -lm -L/opt/lampp/lib -lssl -lcrypto
mysql_config (guessed ) = mysql_config
nocatchstderr (default ) = 0
nofoundrows (default ) = 0
ssl (guessed ) = 1
testdb (default ) = test
testhost (default ) =
testpassword (default ) =
testsocket (default ) =
testuser (default ) =

To change these settings, see 'perl Makefile.PL --help' and
'perldoc INSTALL'.

Checking if your kit is complete...
Looks good
Using DBI 1.48 (for perl 5.008007 on i686-linux) installed in /opt/lampp/lib/perl5/site_perl/5.8.7/i686-linux/auto/DBI/
Writing Makefile for DBD::mysql
Could not read '/root/.cpan/build/DBD-mysql-4.006-LTVYbB/META.yml'. Falling back to other methods to determine prerequisites
cp lib/DBD/mysql.pm blib/lib/DBD/mysql.pm
cp lib/DBD/mysql/GetInfo.pm blib/lib/DBD/mysql/GetInfo.pm
cp lib/DBD/mysql/INSTALL.pod blib/lib/DBD/mysql/INSTALL.pod
cp lib/Bundle/DBD/mysql.pm blib/lib/Bundle/DBD/mysql.pm
cc -c -I/opt/lampp/lib/perl5/site_perl/5.8.7/i686-linux/auto/DBI/ -I/opt/lampp/include/mysql -I/opt/lampp/include -L/opt/lampp/lib -Wl,--rpath -Wl,/opt/lampp/lib -DDBD_MYSQL_WITH_SSL -DDBD_MYSQL_INSERT_ID_IS_GOOD -g -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -DVERSION=\"4.006\" -DXS_VERSION=\"4.006\" -fpic "-I/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE" dbdimp.c
In file included from /opt/lampp/lib/perl5/site_perl/5.8.7/i686-linux/auto/DBI/DBIXS.h:19,
from dbdimp.h:21,
from dbdimp.c:20:
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:382:24: error: sys/types.h: No such file or directory
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:413:19: error: ctype.h: No such file or directory
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:425:23: error: locale.h: No such file or directory
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:442:20: error: setjmp.h: No such file or directory
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:448:26: error: sys/param.h: No such file or directory
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:453:23: error: stdlib.h: No such file or directory
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:458:23: error: unistd.h: No such file or directory
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:731:23: error: string.h: No such file or directory
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:880:27: error: netinet/in.h: No such file or directory
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:884:26: error: arpa/inet.h: No such file or directory
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:894:25: error: sys/stat.h: No such file or directory
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:923:25: error: sys/time.h: No such file or directory
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:930:27: error: sys/times.h: No such file or directory
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:937:19: error: errno.h: No such file or directory
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:952:25: error: sys/socket.h: No such file or directory
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:979:21: error: netdb.h: No such file or directory
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:1081:24: error: sys/ioctl.h: No such file or directory
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:1110:23: error: dirent.h: No such file or directory
In file included from /opt/gnat/lib/gcc/i386-redhat-linux-gnu/4.0.2/include/syslimits.h:7,
from /opt/gnat/lib/gcc/i386-redhat-linux-gnu/4.0.2/include/limits.h:11,
from /opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:1446,
from /opt/lampp/lib/perl5/site_perl/5.8.7/i686-linux/auto/DBI/DBIXS.h:19,
from dbdimp.h:21,
from dbdimp.c:20:
/opt/gnat/lib/gcc/i386-redhat-linux-gnu/4.0.2/include/limits.h:122:61: error: limits.h: No such file or directory
In file included from /opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:2056,
from /opt/lampp/lib/perl5/site_perl/5.8.7/i686-linux/auto/DBI/DBIXS.h:19,
from dbdimp.h:21,
from dbdimp.c:20:
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/handy.h:121:25: error: inttypes.h: No such file or directory
In file included from /opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:2220,
from /opt/lampp/lib/perl5/site_perl/5.8.7/i686-linux/auto/DBI/DBIXS.h:19,
from dbdimp.h:21,
from dbdimp.c:20:
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/unixish.h:106:21: error: signal.h: No such file or directory
In file included from /opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/iperlsys.h:51,
from /opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:2579,
from /opt/lampp/lib/perl5/site_perl/5.8.7/i686-linux/auto/DBI/DBIXS.h:19,
from dbdimp.h:21,
from dbdimp.c:20:
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perlio.h:65:19: error: stdio.h: No such file or directory
In file included from /opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/iperlsys.h:51,
from /opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:2579,
from /opt/lampp/lib/perl5/site_perl/5.8.7/i686-linux/auto/DBI/DBIXS.h:19,
from dbdimp.h:21,
from dbdimp.c:20:
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perlio.h:253: error: syntax error before '*' token
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perlio.h:256: error: syntax error before '*' token
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perlio.h:256: warning: data definition has no type or storage class
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perlio.h:259: error: syntax error before '*' token
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perlio.h:259: warning: data definition has no type or storage class
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perlio.h:262: error: syntax error before 'FILE'
In file included from /opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:2593,
from /opt/lampp/lib/perl5/site_perl/5.8.7/i686-linux/auto/DBI/DBIXS.h:19,
from dbdimp.h:21,
from dbdimp.c:20:
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/sv.h:389: error: syntax error before 'DIR'
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/sv.h:389: warning: no semicolon at end of struct or union
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/sv.h:389: warning: no semicolon at end of struct or union
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/sv.h:391: error: syntax error before '}' token
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/sv.h:391: warning: data definition has no type or storage class
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/sv.h:405: error: syntax error before '}' token
In file included from /opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:2602,
from /opt/lampp/lib/perl5/site_perl/5.8.7/i686-linux/auto/DBI/DBIXS.h:19,
from dbdimp.h:21,
from dbdimp.c:20:
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/av.h:13: error: syntax error before 'ssize_t'
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/av.h:13: warning: no semicolon at end of struct or union
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/av.h:14: warning: data definition has no type or storage class
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/av.h:23: error: syntax error before '}' token
In file included from /opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:2605,
from /opt/lampp/lib/perl5/site_perl/5.8.7/i686-linux/auto/DBI/DBIXS.h:19,
from dbdimp.h:21,
from dbdimp.c:20:
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/scope.h:232: error: syntax error before 'sigjmp_buf'
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/scope.h:232: warning: no semicolon at end of struct or union
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/scope.h:239: error: syntax error before '}' token
In file included from /opt/lampp/lib/perl5/site_perl/5.8.7/i686-linux/auto/DBI/DBIXS.h:19,
from dbdimp.h:21,
from dbdimp.c:20:
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:2777: error: syntax error before 'getuid'
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:2777: warning: data definition has no type or storage class
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:2778: error: syntax error before 'geteuid'
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:2778: warning: data definition has no type or storage class
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:2779: error: syntax error before 'getgid'
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:2779: warning: data definition has no type or storage class
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:2780: error: syntax error before 'getegid'
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:2780: warning: data definition has no type or storage class
In file included from /opt/lampp/lib/perl5/site_perl/5.8.7/i686-linux/auto/DBI/DBIXS.h:19,
from dbdimp.h:21,
from dbdimp.c:20:
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:3093:22: error: math.h: No such file or directory
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:3195: error: syntax error before 'ruid'
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:3199: error: syntax error before 'rgid'
In file included from /opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:3813,
from /opt/lampp/lib/perl5/site_perl/5.8.7/i686-linux/auto/DBI/DBIXS.h:19,
from dbdimp.h:21,
from dbdimp.c:20:
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/proto.h:90: error: syntax error before 'mode'
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/proto.h:199: error: syntax error before 'off_t'
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/proto.h:201: error: syntax error before 'Perl_do_sysseek'
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/proto.h:201: error: syntax error before 'off_t'
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/proto.h:201: warning: data definition has no type or storage class
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/proto.h:202: error: syntax error before 'Perl_do_tell'
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/proto.h:202: warning: data definition has no type or storage class
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/proto.h:284: error: syntax error before 'testgid'
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/proto.h:288: warning: 'struct tm' declared inside parameter list
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/proto.h:288: warning: its scope is only this definition or declaration, which is probably not what you want
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/proto.h:441: warning: 'struct tm' declared inside parameter list
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/proto.h:456: error: syntax error before 'Perl_my_fork'
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/proto.h:456: warning: data definition has no type or storage class
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/proto.h:582: error: syntax error before 'pid'
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/proto.h:815: error: syntax error before 'pid'
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/proto.h:1305: error: syntax error before 'Perl_PerlIO_read'
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/proto.h:1305: warning: data definition has no type or storage class
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/proto.h:1306: error: syntax error before 'Perl_PerlIO_write'
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/proto.h:1306: warning: data definition has no type or storage class
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/proto.h:1307: error: syntax error before 'Perl_PerlIO_unread'
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/proto.h:1307: warning: data definition has no type or storage class
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/proto.h:1308: error: syntax error before 'Perl_PerlIO_tell'
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/proto.h:1308: warning: data definition has no type or storage class
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/proto.h:1309: error: syntax error before 'off_t'
In file included from /opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:3836,
from /opt/lampp/lib/perl5/site_perl/5.8.7/i686-linux/auto/DBI/DBIXS.h:19,
from dbdimp.h:21,
from dbdimp.c:20:
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/intrpvar.h:66: error: syntax error before 'PL_basetime'
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/intrpvar.h:66: warning: data definition has no type or storage class
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/intrpvar.h:237: error: syntax error before 'PL_uid'
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/intrpvar.h:237: warning: data definition has no type or storage class
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/intrpvar.h:238: error: syntax error before 'PL_euid'
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/intrpvar.h:238: warning: data definition has no type or storage class
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/intrpvar.h:239: error: syntax error before 'PL_gid'
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/intrpvar.h:239: warning: data definition has no type or storage class
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/intrpvar.h:240: error: syntax error before 'PL_egid'
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/intrpvar.h:240: warning: data definition has no type or storage class
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:4368:24: error: sys/ipc.h: No such file or directory
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:4369:24: error: sys/sem.h: No such file or directory
/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:4494:24: error: sys/file.h: No such file or directory
dbdimp.c: In function 'alloc_param':
dbdimp.c:112: warning: incompatible implicit declaration of built-in function 'memset'
dbdimp.c: In function 'alloc_bind':
dbdimp.c:130: warning: incompatible implicit declaration of built-in function 'memset'
dbdimp.c: In function 'alloc_fbind':
dbdimp.c:146: warning: incompatible implicit declaration of built-in function 'memset'
dbdimp.c: In function 'alloc_fbuffer':
dbdimp.c:161: warning: incompatible implicit declaration of built-in function 'memset'
dbdimp.c: In function 'mysql_db_FETCH_attrib':
dbdimp.c:2191: warning: incompatible implicit declaration of built-in function 'strlen'
dbdimp.c: In function 'mysql_st_prepare':
dbdimp.c:2448: warning: incompatible implicit declaration of built-in function 'fprintf'
dbdimp.c:2448: error: 'stderr' undeclared (first use in this function)
dbdimp.c:2448: error: (Each undeclared identifier is reported only once
dbdimp.c:2448: error: for each function it appears in.)
dbdimp.c:2466: warning: incompatible implicit declaration of built-in function 'strlen'
dbdimp.c: In function 'mysql_st_internal_execute':
dbdimp.c:2870: warning: incompatible implicit declaration of built-in function 'malloc'
dbdimp.c:2876: warning: incompatible implicit declaration of built-in function 'strncpy'
dbdimp.c: In function 'mysql_st_execute':
dbdimp.c:3079: error: 'u_long' undeclared (first use in this function)
dbdimp.c:3079: error: syntax error before 'sth'
dbdimp.c:3156: warning: incompatible implicit declaration of built-in function 'sprintf'
dbdimp.c: In function 'mysql_describe':
dbdimp.c:3253: warning: incompatible implicit declaration of built-in function 'memset'
dbdimp.c: In function 'mysql_st_fetch':
dbdimp.c:3356: error: 'u_long' undeclared (first use in this function)
dbdimp.c:3356: error: syntax error before 'sth'
dbdimp.c:3419: error: dereferencing pointer to incomplete type
dbdimp.c:3508: error: syntax error before 'sth'
dbdimp.c:3573: error: dereferencing pointer to incomplete type
dbdimp.c: In function 'mysql_st_STORE_attrib':
dbdimp.c:3810: error: 'u_long' undeclared (first use in this function)
dbdimp.c:3810: error: syntax error before 'sth'
dbdimp.c:3820: error: syntax error before 'sth'
dbdimp.c: In function 'mysql_st_FETCH_internal':
dbdimp.c:3893: warning: incompatible implicit declaration of built-in function 'strlen'
dbdimp.c: In function 'mysql_st_FETCH_attrib':
dbdimp.c:4017: error: 'u_long' undeclared (first use in this function)
dbdimp.c:4017: error: syntax error before 'sth'
dbdimp.c:4039: warning: incompatible implicit declaration of built-in function 'sprintf'
dbdimp.c: In function 'mysql_bind_ph':
dbdimp.c:4226: warning: incompatible implicit declaration of built-in function 'sprintf'
dbdimp.c: In function 'mysql_db_reconnect':
dbdimp.c:4388: warning: incompatible implicit declaration of built-in function 'memcpy'
dbdimp.c:4389: warning: incompatible implicit declaration of built-in function 'memset'
dbdimp.c: In function 'mysql_db_type_info_all':
dbdimp.c:4466: warning: incompatible implicit declaration of built-in function 'strlen'
dbdimp.c: In function 'parse_number':
dbdimp.c:4597: warning: incompatible implicit declaration of built-in function 'strlen'
make: *** [dbdimp.o] Error 1
CAPTTOFU/DBD-mysql-4.006.tar.gz
/usr/bin/make -- NOT OK
Warning (usually harmless): 'YAML' not installed, will not store persistent state
Running make test
Can't test without successful make
Running make install
Make had returned bad status, install seems impossible
Failed during this command:
CAPTTOFU/DBD-mysql-4.006.tar.gz : make NO
melz
 
Posts: 25
Joined: 21. November 2007 13:58

Postby Scory » 25. February 2008 14:32

>/opt/lampp/lib/perl5/5.8.7/i686-linux/CORE/perl.h:382:24: error: sys/types.h: No such file or directory

Dieser und alle gleich aussehenden Meldungen bedeutet, dass entweder /usr/include nicht vorhanden ist oder nicht vom cc durchsucht wird. Letzteres erreicht man durch die Angabe "-I/usr/include" (so wie die ganzen anderen Optionen im cc-Kommando) oder durch hinzufügen von /usr/include zur Environment-Variablen INCLUDE_DIR (o.ä - weiß ich jetzt nicht auswendig, mach mal einen Aufruf "env" in einer Shell, da wirst Du das sehen).

Das ist insgesamt aber zu schwer für Dich - wer so etwas durchziehen will, braucht massive Linux Kenntnisse - davon bist Du Meilen entfernt. Es ist nicht abzusehen, wieviele Probleme noch auftauchen.

Nach wie vor frage ich mich, was Du mit dem mysqldumper machen willst - es dürfte erheblich einfacher sein, wenn Du mitteilst, was Du wirklich tun willst und welche Software Dir zur Verfügung steht. Es gibt ganz sicher einfachere Möglichkeiten als diese.
Scory
 

Postby melz » 25. February 2008 14:52

Hallo,

ich brauche eine halbstündliche automatische Sicherung einer Mysql-datenbank. Mehr nicht.

env schmeisst folgendes aus (mit ein paar manuellen Änderungen):

HOSTNAME=mein-server
TERM=xterm
SHELL=/bin/bash
HISTSIZE=1000
SSH_CLIENT=217.238.204.193 3205 22
SSH_TTY=/dev/pts/0
USER=ich
LS_COLORS=no=00:fi=00:di=00;34:ln=00;36:pi=40;usw
MAIL=/var/spool/mail/root
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin:/opt/lampp/bin
INPUTRC=/etc/inputrc
PWD=istdazufinden
LANG=C
SHLVL=1
HOME=/root
LOGNAME=ich
SSH_CONNECTION=217.255.204.193 3205 87.178.112.125 22
LESSOPEN=|/usr/bin/lesspipe.sh %s
G_BROKEN_FILENAMES=1
_=/bin/env
melz
 
Posts: 25
Joined: 21. November 2007 13:58

Postby Scory » 25. February 2008 14:56

>ich brauche eine halbstündliche automatische Sicherung einer Mysql-datenbank. Mehr nicht.

Leider versäumst Du auch hier wieder zu erläutern, ob die Datenbank auf dem gleichen Rechner liegt, wie die Sicherung liegen soll, oder ob es verschiedene Rechner sind.

Für regelmäßige Backups braucht man zunächst keinem mysqldumper.
Scory
 

Postby melz » 25. February 2008 14:59

die kann auf dem gleichen Rechner liegen. Ein lokales Programm synchronisiert ein Verzeichnis mit den anderen Daten mit dem lokalen Server. Da könnte dann die Datenbanksicherung mitgehen.
melz
 
Posts: 25
Joined: 21. November 2007 13:58

Postby Scory » 25. February 2008 15:27

>Ein lokales Programm synchronisiert ein Verzeichnis mit den anderen Daten mit dem lokalen Server

Hä? Bahnhof!

Wieso um Himmels Willen willst Du mit dem mysqldumper arbeiten, der etwas TOTAL anderes macht als Du willst?

Wieso baust Du nicht einfach in /etc/crontab (da gehört es sowieso hin) einen halbstündigen Aufruf auf ein Shellscript ein, welches eine Kopie der aktuellen Datenbank irgendwohin kopiert? Ganz simples "cp" (copy).
Scory
 

Postby melz » 25. February 2008 15:37

Mysqldumper erstellt mit Perl einen Cronjob, der die Datenbank in einem bestimmten Rhythmus sichert und komprimiert.

Ein shellscript habe ich nicht, kann auch keines bauen, ich weiss nicht wie die Datei der Datenbank heisst, weiss nicht wo sie liegt usw.

Mir erscheint es einfacher, dbi::mysql zu installieren.
melz
 
Posts: 25
Joined: 21. November 2007 13:58

Postby Scory » 25. February 2008 16:19

>Mysqldumper erstellt mit Perl einen Cronjob, der die Datenbank in einem bestimmten Rhythmus sichert und komprimiert.

Nein, tut es genau nicht. Mysqldumper SIMULIERT eine Art Cronjob für Remote Server, wenn dort keine Rechte bestehen, einen echten Cronjob aufzusetzen. Zudem überträgt Mysqldumper dann "päckchenweise" die Daten vom Remote Server auf einen lokalen Rechner, damit nicht zu große Datenpakete angefordert werden.

Das hat alles NICHTS damit zu tun, was Du brauchst. Das versuche ich Dir schon seit Wochen klar zu machen - aber irgendwie weigerst Du Dich standhaft, es zu verstehen.

>Ein shellscript habe ich nicht, kann auch keines bauen, ich weiss nicht wie die Datei der Datenbank heisst, weiss nicht wo sie liegt usw.

Wenn Du nicht weißt, wie die Datenbank heißt, kann auch Mysqldumper nichts sichern. Du mußt so oder so wissen, welche Datenbanken gesichert werden müssen.

Ein Shellscript (oder PHP Script) kann ich Dir schreiben, das wäre nur ein Miniprogramm, weil es extrem einfach ist, Datenbanken lokal zu sichern.

>Mir erscheint es einfacher, dbi::mysql zu installieren.

Wie Du sieht, liegst Du total falsch damit. Seit Wochen bekommst Du es nicht hin - ein Shellscript ist in 5 Minuten fertig.
Scory
 

Postby melz » 25. February 2008 16:28

Ich versteh das schon, allein mir fehlt das Wissen. Wie die Datenbank heisst weiss ich schon, aber ist das gleichbedeutend mit dem Dateinamen? Und wo ist die schon wieder gespeichert?

Wäre nicht schlecht, wenn du mir so ein script zukommen lassen könntest. Die 5 Minuten gelten sicher nur für dich.

Danke.
melz
 
Posts: 25
Joined: 21. November 2007 13:58

Postby Scory » 25. February 2008 17:40

>Wie die Datenbank heisst weiss ich schon, aber ist das gleichbedeutend mit dem Dateinamen? Und wo ist die schon wieder gespeichert?

Datenbanken sind bei MySQL Namen von Ordnern. Gespeichert sind die Ordner dort, wie es im my.cnf angegeben ist. Die entsprechende Anweisung lautet

Meistens ist das unter /var/lib/mysql - bei Xampp allerdings unter /opt/lampp/var/mysql.

Jeder Ordner dort entspricht einer Datenbank. Die Tabellen einer Datenbank wiederum entsprechen den Dateien innerhalb dieses Ordners, wobei für eine Tabelle mehrere Dateien angelegt werden, meistens mit den Endungen *.frm, *.MYD und *.MIY

Die verschiedenen Dateien benötigt MySQL für die Indizes der Datenbank. Das ganze gilt so allerdings nur für den DBMS-Treiber MyISAM, bei InnoDB ist die Datenbank an sich nur eine einzige Riesendatei, deren Ort aber auch in my.cnf festgelegt wird.

Also mußt Du erst einmal angeben, welche Datenbanken (= welche Ordner) gesichert werden sollen.

Dann die nächste Frage: wie soll gesichert werden? Man kann (ich selbst mache es auch so) einfach eine Kopie eines Ordners sichern, sprich den jeweiligen Ordner irgendwo hinkopieren und/oder sogar auf CD/DVD brennen. Die Kopieranweisung für einen Ordner unter Linux, inkl. aller Dateien und Unterverzeichnisse, lautet:

Code: Select all
cp -r /hier/steht/ein/ordnernam /hier/soll/er/hin


Wie Du siehst, mächtig einfach. Es würde schon reichen, wenn Du die obige simple Zeile anpasst und in /etc/crontab einträgts (beispielsweise jede 20. und jede 50. Minute einer Stunde - macht dann halbstündig). Da sähe konkret so aus:

Code: Select all
...
20 * * * * cp -r /var/lib/mysql/datenbank /home/irgendwer/meinebackups
50 * * * * cp -r /var/lib/mysql/datenbank /home/irgendwer/meinebackups
...


Leider unterscheiden sich von Linux zu Linux bisweilen die genauen Syntaxregeln für crontab, aber inzwischen unterstützen fast alle System auch die vereinfachte Version, da gibt es im Verzeichnis /etc die Ordner cron.hourly, cron.daily, cron.weekly und cron.monthly - und die tun genau das, was man erwartet: man braucht einfach nur ein Shellscript in den jeweiligen Ordner zu stellen, und das wird dann stündlich (cron.hourly) oder täglich oder wöchentlich oder monatlich ausgeführt.

Ein Shellscript ist seinerseits nichts anderes als eine Textdatei mit einer beliebigen Anzahl solcher Kommandos wie oben das "cp"-Kommando. Man kann nur eine Zeile hineinschreiben, kann man auch 1000de von Zeilen hineinschreiben.

Jetzt mußt Du nur noch herausfinden, wo bei dir die Datenbanken liegen - das sollte jetzt ziemlich einfach sein, nachdem Du nun weißt, wo Du nachschauen mußt.
Scory
 

Next

Return to XAMPP für Linux

Who is online

Users browsing this forum: No registered users and 21 guests