Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Problema su backup database Mysql.

    Ciao a tutti, sono Skorpyo71, un web designer-programmatore-"internettuttologo" e smanettone , lavoratore autonomo con partita iva, dalla provincia di Perugia. Lavoro in php da ormai 4 anni, e fino ad adesso non ho mai avuto problemi. O meglio, li ho sempre avuti, ma li ho sempre superati. Ora pero' ho un quesito da proporre. Ho letto gli altri post, ho provato ma non funzia. Allora, ho realizzato un programma di fatturazione in php per un veterinario (ho intenzione anche di commercializzarlo). Su richiesta (piu' che fondata) sua, devo realizzare una sezione che, dopo pressione di un pulsante, mi genera una copia di backup del database, da salvare a parte. il programma gira in LOCALE tramite Easyphp. Possibile che non ci sia un modo per lanciare, da programma, la stessa identica procedura che phpmyadmin mette in pratica quando faccio Esporta database? Ho provato a mettere in pratica i programmi che ho trovato in giro, ma non funzionano, non fanno nulla. Forse sbaglio qualcosa, non ho configurato bene.... O forse questi programmi funzionano solo in rete? il problema e' che devo lavorare in locale. Qualcuno sa indirizzarmi? Grazie per la risposta.

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,445
    Benvenuto.

    Basta che alla pressione del tasto avvii uno script php in cui lanci il comando mysqldump usando exec().

  3. #3
    grazie. pero' e' questo il problema. ho provato già mysqldump con exec(). Ma forse sbaglio qualcosa. Non riesco a capire qual'e' la sintassi giusta. semplicemente non succede niente o io non mi accorgo di nulla. E poi ripeto, questo script funziona in locale? Avete un esempio, ma ben dettagliato con un caso concreto, dello script?

  4. #4
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    posta il codice esatto che hai usato con exec
    sei su Windows?

  5. #5
    In questo momento sto postando da un mac (sto studiando per realizzare app per Iphone). ma di solito lavoro su windows.
    Per adesso, per prova, lancio il programma provaback.php, il cui codice esatto e':

    <?
    exec('mysqldump --user=root --password= --host=127.0.0.1 DB_NAME easyveterinario > c:/Users/Karma/Desktop/backup.sql');
    ?>

    dove: root e' l'user di default di easyphp. la password e' vuota. l'host e' 127.0.0.1, e il database si chiama easyveterinario.sql. Per prova volevo vedere il file di backup su desktop (come se lo esportassi manualmente).
    Dove sbaglio? la sintassi?

  6. #6
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    immaginavo già l'errore
    se sei su Windows devi passare il path completo verso mysqldump (sarà qualcosa tipo C:\cartellaDiEasyPHP\mysqldump)

  7. #7
    Ahhhh!! quindi una cosa tipo:
    exec('c:/Program files/Easyphp12.1/mysqldump --user=root --password= --host=127.0.0.1 DB_NAME easyveterinario > c:/Users/Karma/Desktop/backup.sql');

    Quindi se ho capito bene non mi faceva nulla perche' non lanciava nulla. Ma perche' non ha dato errore?
    Per il resto va bene? La sintassi e' giusta?

  8. #8
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    mi lascia un attimo perplesso la dichiarazione DB_NAME, dovrebbe bastare solo il nome del database
    lancia da riga di comando la stringa e vedi cosa fa, almeno l'errore lo vedi a schermo (spero)

  9. #9
    si. effettivamente mi sa che non va bene. oggi pom o sera provo (devo finire piu' di un lavoro.) Grazie per avermi messo nella strada giusta, comunque.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.