Bonjour,
Voila, je me suis fait un petit script me permettant de tester si ma connexion MySQL est toujours active ou non et dans ce cas, en cas de retour, je redémarre un logiciel.
Je suis débutant sur PERL, donc je ne connais pas encore toutes les astuces de ce langage ...
Voici le code qui me pose problème :
Ce script tourne en CRON. Le problème, c'est que dés lors que le script m'envoie un email, j'ai aussi le retour de script de mon crontab :Code:
1
2
3
4
5
6
7
8
9 my $dbh = DBI->connect( "DBI:mysql:database=$database;host=$hostname", $login, $mdp ) or panneSQL("Impossible de se connecter au serveur MySQL"); if ( $sqlError == 1 ) { unlink( $f_mysql ) ; my $retour = system( "/etc/init.d/xxxxxxxx restart" ) ; sendMail() ; die ""; }
Dans le cas où la connexion MySQL ne marche pas :
En cas de retour de la connexion MySQL :Code:DBI connect('database=XXXXXXX;host=XXXXXXX','XXXXXXXXXX',...) failed: Access denied for user 'XXXXXXXXXXX'@'%' to database 'XXXXXXXXXX' at /home/XXXXXXXXX/perl/checkStart line 83 Died at /home/XXXXXXXXXX/perl/checkStart line 38.
Je ne sais pas comment faire pour rendre muet PERL sans le passer en DAEMON ... En plus, il aime pas executer un script shell de restart ...Code:
1
2
3 Stopping XXXXXXX: M4UClient/etc/init.d/XXXXXXX: line 39: start-stop-daemon: command not found . Starting XXXXXXX: XXXXXXX/etc/init.d/XXXXXXX: line 30: start-stop-daemon: command not found failed! Died at /home/XXXXXXX/perl/checkStart line 90.
Merci d'avance pour votre aide.