Probleme de Cron
18 messages
• Page 1 sur 2 • 1, 2
Consultez la formation à Google Analytics de WebRankInfo / Ranking Metrics
- YvesB
- WRInaute impliqué

- Messages: 520
- Inscription: 11 Jan 2004
Probleme de Cron
Bjr, j'ai essayer dajouter l'execution d'un cron tout les jours pr executer un script php et sauvegarder ma base sql.
Il ne semble pas fonctionner. Voyer vous l'ereur la dedans?
forumsSHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
02 4 * * * /usr/local/bin/php /home/afterdreamscom/robot.php
*/3 * * * * postfix /home/mailusers/maintain
02 4 * * * /usr/bin/mysqldump --host=213.246.40.46 --user=afterdreamscom
--password=monpasse --add-drop-table afterdreams > /usr/local/bin/php/home/afterdreamscom/dumpdb1.sql
Merci a vous
Il ne semble pas fonctionner. Voyer vous l'ereur la dedans?
forumsSHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
02 4 * * * /usr/local/bin/php /home/afterdreamscom/robot.php
*/3 * * * * postfix /home/mailusers/maintain
02 4 * * * /usr/bin/mysqldump --host=213.246.40.46 --user=afterdreamscom
--password=monpasse --add-drop-table afterdreams > /usr/local/bin/php/home/afterdreamscom/dumpdb1.sql
Merci a vous
- Oncle Tom
- WRInaute impliqué

- Messages: 812
- Inscription: 31 Mar 2003
Salut
Pour ta sauvegarde, j'te conseille de tout faire via script, c'est aisément plus modifiable. Dans le script php, exécute y via exec() tes commandes SHELL (pas le pétrolier).
Sinon pour lancer un script php il est plus pratique de faire
Pour ta sauvegarde, j'te conseille de tout faire via script, c'est aisément plus modifiable. Dans le script php, exécute y via exec() tes commandes SHELL (pas le pétrolier).
Sinon pour lancer un script php il est plus pratique de faire
- Code: Tout sélectionner
02 4 * * * php -f /home/afterdreamscom/robot.php
- YvesB
- WRInaute impliqué

- Messages: 520
- Inscription: 11 Jan 2004
C'est bon pr le robot.php j'ai reussi a le faire marcher. MErci a toi.
Pour la sauvegarde par script, je veux bien mais alors je sais vraiment pas quoi mettre ds le script
M'enfin je vais chercher un peu sur le net de quoi m'inspirer.
C t plus a 4 heure tt les matin, je ss pas pq jai mis 2.
Merci The Jedi
Pour la sauvegarde par script, je veux bien mais alors je sais vraiment pas quoi mettre ds le script
C t plus a 4 heure tt les matin, je ss pas pq jai mis 2.
Merci The Jedi
- Oncle Tom
- WRInaute impliqué

- Messages: 812
- Inscription: 31 Mar 2003
Pour la sauvegarde par script, t'as 2 étapes.
La base de données
Ca créera un dump de ta base (réimportable très facilement avec la commande d'après) dans le fichier sauvegarde.sql (à côté de ton script php).
Plus d'infos : http://dev.mysql.com/doc/mysql/en/mysqldump.html
Et pour réimporter ta base, tu le feras surement directement dans le shell donc
Sauvegarde des fichiers
Limite le plus simple.
Après à toi d'adapter les chemins et tout mais jte déconseille de mettre ton script de sauvegarde dans le répertoire que tu tentes de sauver ^^.
Après, faut stocker ça ailleurs car une save sur le même serveur, si le disque dur crash ... ben tu l'as dans l'os.
Bon courage
La base de données
- Code: Tout sélectionner
<?php
exec("mysqldump -u loginbdd --password=passbdd --databases nombase > sauvegarde.sql");
?>
Ca créera un dump de ta base (réimportable très facilement avec la commande d'après) dans le fichier sauvegarde.sql (à côté de ton script php).
Plus d'infos : http://dev.mysql.com/doc/mysql/en/mysqldump.html
Et pour réimporter ta base, tu le feras surement directement dans le shell donc
- Code: Tout sélectionner
mysql -u loginbdd --password=passbdd nombase < sauvegarde.sql
Sauvegarde des fichiers
Limite le plus simple.
- Code: Tout sélectionner
<?php
exec("tar cfzP site.tar.gz /home/chemin/de/ton/site/");
?>
Après à toi d'adapter les chemins et tout mais jte déconseille de mettre ton script de sauvegarde dans le répertoire que tu tentes de sauver ^^.
Après, faut stocker ça ailleurs car une save sur le même serveur, si le disque dur crash ... ben tu l'as dans l'os.
Bon courage
- YvesB
- WRInaute impliqué

- Messages: 520
- Inscription: 11 Jan 2004
Merci the Jedi, j'ai fait comme tu ma dis, avec ce script :
Mais ca me repond base non sauvegardé, et bien sur pas de fichier... Je suis sur que mon pass et bon, je vois pas :'(
- Code: Tout sélectionner
if(exec("mysqldump -u afterdreamscom --password=pass --databases afterdreams > sauvegardebase.sql")){echo ("Base sauvegardé");}else{echo ("Base non sauvegardé");}
Mais ca me repond base non sauvegardé, et bien sur pas de fichier... Je suis sur que mon pass et bon, je vois pas :'(
- spijoelx
- WRInaute discret

- Messages: 249
- Inscription: 6 Fév 2004
ta fonction exec() est bien activée ?
mais sinon pourquoi apeller un php qui éxécute une commande serveur... autant apeller soit la commande serveur direct, soit un bash qui integre la commande.
tu fait:
vi nom_bash
tu balances ta ligne mysqldump...
:wq
chmod +x nom_bash
et tu mets direct /ton/path/nom_bash en cron
ca evite d'utiliser php pour rien..
mais sinon pourquoi apeller un php qui éxécute une commande serveur... autant apeller soit la commande serveur direct, soit un bash qui integre la commande.
tu fait:
vi nom_bash
tu balances ta ligne mysqldump...
:wq
chmod +x nom_bash
et tu mets direct /ton/path/nom_bash en cron
ca evite d'utiliser php pour rien..
- Oncle Tom
- WRInaute impliqué

- Messages: 812
- Inscription: 31 Mar 2003
Je fais tout en php car ça m'évite d'avoir à mixer différents fichiers.
Au départ je faisais ça en bash mais comme je ne le manipule pas encore assez bien, j'ai opté pour le php.
J'avais un problème pour exporter les sauvegardes sur un autre serveur (il voulait pas enlever le mode passif quoique je fasse) donc voilou ^^
Au départ je faisais ça en bash mais comme je ne le manipule pas encore assez bien, j'ai opté pour le php.
J'avais un problème pour exporter les sauvegardes sur un autre serveur (il voulait pas enlever le mode passif quoique je fasse) donc voilou ^^
- YvesB
- WRInaute impliqué

- Messages: 520
- Inscription: 11 Jan 2004
Mais si je n'avais pas les autorisations pr faire un mysqldump, ou si la fonction n'etait pas activé, il me mettrait un message d'erreur non? parce que la rien, juste mon message pr me dire que ce n'est pas bon. (biensur je nest tjs pas de @ avt ma fonction )
- Tex
- WRInaute occasionnel

- Messages: 449
- Inscription: 9 Juil 2004
exec() hérite des droits de php eux meme hérités d'apache si le php est en module.
tu peut soit changer les droits de apache/php, soit changer les attributs de mysqldump pour que php puisse l'utiliser avec ses droits actuels (moins risqué).
sinon tu peut aussi passer par une commande bash 'sudo'
tu peut soit changer les droits de apache/php, soit changer les attributs de mysqldump pour que php puisse l'utiliser avec ses droits actuels (moins risqué).
sinon tu peut aussi passer par une commande bash 'sudo'
- YvesB
- WRInaute impliqué

- Messages: 520
- Inscription: 11 Jan 2004
J'ai un peu de mal avec ce que tu me dis de faire.
De mon coté, j'ai trouvé un compris, j'execute un script php qui contient exec, mais avec un cron
Ca marche, mais le probleme est que la base n'est pas totalement sauvegardé ! Ca prend environ de 4 a 5 mo de la base, puis sa sarrete (ca me repond base non sauvegardé) et j'ai quand meme mon fichier sql de sauvegarde mais de 5 mo au lieu des 30 de la base ....
Je sais pas je crois que c mon cron qui ne prend pas le tps de séxécuté jusqu'au bout. Y a moyen de le configurer si c'est ca? Sinon pt est til possible de compresser la base avant de la sauvegarder?
Merci
De mon coté, j'ai trouvé un compris, j'execute un script php qui contient exec, mais avec un cron
Je sais pas je crois que c mon cron qui ne prend pas le tps de séxécuté jusqu'au bout. Y a moyen de le configurer si c'est ca? Sinon pt est til possible de compresser la base avant de la sauvegarder?
Merci
18 messages
• Page 1 sur 2 • 1, 2
Formation recommandée sur ce thème :
Formation Google Analytics : en 2 jours, apprenez comment exploiter l'essentiel des possibilités de l'outil de mesure d'audience de Google. Formation animée par les experts Google Analytics de Ranking Metrics.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités
