I’ve started an investigation of MySQL Backups using LVM. I’m working with Lenz’s mylvmbackup but I found it both used Perl and needed a number of dependencies installed.
Installing dependencies failed on my test system, yet I found it actually worked when I went back to my dev system (but it is not configured with LVM for full testing).
$ sudo cpan Config::IniFiles Sys::Syslog Date::Format Getopt::Long DBI
Details of error:
.... CPAN.pm: Going to build S/SA/SAPER/Sys-Syslog-0.27.tar.gz WARNING: LICENSE is not a known parameter. Checking if your kit is complete... Looks good 'LICENSE' is not a known MakeMaker parameter name. Writing Makefile for Sys::Syslog cp Syslog.pm blib/lib/Sys/Syslog.pm /usr/bin/perl /usr/share/perl/5.8/ExtUtils/xsubpp -noprototypes -typemap /usr/share/perl/5.8/ExtUtils/typemap Syslog.xs > Syslog.xsc && mv Syslog.xsc Syslog.c cc -c -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBIAN -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -DVERSION="0.27" -DXS_VERSION="0.27" -fPIC "-I/usr/lib/perl/5.8/CORE" -DUSE_PPPORT_H Syslog.c In file included from Syslog.xs:6: /usr/lib/perl/5.8/CORE/perl.h:420:24: error: sys/types.h: No such file or directory /usr/lib/perl/5.8/CORE/perl.h:451:19: error: ctype.h: No such file or directory /usr/lib/perl/5.8/CORE/perl.h:463:23: error: locale.h: No such file or directory /usr/lib/perl/5.8/CORE/perl.h:480:20: error: setjmp.h: No such file or directory
Some searching was necessary to find this thread and confirm that my prod server did not have a correct dev package.
apt-get install libc6-dev
NOTE: While the doc refers to the module File::Basename, trying to install this throws an error which when you investigate further is a false positive. The README does refer to this being normally part of the default perl installation.
Ms. Anthrope says
Why not use apt/aptitude etc, and make it easy?
# apt-get install libconfig-inifiles-perl libsys-syslog-perl libtimedate-perl libdbi-perl
Getopt::Long is part of perl-base.
Lenz Grimmer says
Hi Ronald, these Perl modules are normally part of your Linux distribution and come pre-packaged, no need to compile from scratch. As you observed, File::Basename is part of the core Perl package and thus does not need to be installed separately. Bug reports or patches for the code or documentation are always welcome
Thanks for giving mylvmbackup a try!
LenZ