Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. Coding
    5. [php] funzioni per il backup di un db mysql
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • R
      riky78 User Attivo • ultima modifica di
      <?php
      header&#40;"Content-type: text/plain"&#41;;
      
      	
      $command = "&#40;mysqldump -c -v --host=localhost --user='usaernamei' --password='pass' nomedb&#41; 2>&1";
      		
      system&#40;$command&#41;;
      ?>
      

      questo è un esempio semplice
      usando **mysqldump ** è possibile eseguire il dump completo, poi ci sono le diverse opzioni che vi lascio scoprire da soli....

      ovviamente bisogna avere il permesso di usare mysqldump

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • T
        tuonorosso Super User • ultima modifica di

        Questo potrebbe essere utile...

        <?php
          // Enter your MySQL access data  
          $host= 'dbhost';        
          $user= 'dbuser';              
          $pass= 'dbpassword';
          $db=  'db';
        
          $backupdir = 'backups';  
        
          // Compute day, month, year, hour and min.
          $today = getdate&#40;&#41;;
          $day = $today&#91;mday&#93;;
          if &#40;$day < 10&#41; &#123;
             $day = "0$day";
          &#125;
          $month = $today&#91;mon&#93;;
          if &#40;$month < 10&#41; &#123;
             $month = "0$month";
          &#125;
          $year = $today&#91;year&#93;;
          $hour = $today&#91;hours&#93;;
          $min = $today&#91;minutes&#93;;
          $sec = "00";
        
          // Execute mysqldump command.
          // It will produce a file named $db-$year$month$day-$hour$min.gz 
          // under $DOCUMENT_ROOT/$backupdir
          system&#40;sprintf&#40; 
           'mysqldump --opt -h %s -u %s -p%s %s | gzip > %s/%s/%s-%s%s%s-%s%s.gz',                                                  
           $host,
           $user,
           $pass,
           $db,
           getenv&#40;'DOCUMENT_ROOT'&#41;,
           $backupdir,
           $db,
           $year,
           $month,
           $day,
           $hour,
           $min
          &#41;&#41;;  
          echo '+DONE';  
        ?> 
        
        
        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • T
          tymba Super User • ultima modifica di

          grazie, lo provo e poi ti dico :ciauz:

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • S
            simons User • ultima modifica di

            @Tymba said:

            grazie, lo provo e poi ti dico :ciauz:

            Hai accesso root al server?

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • T
              tuonorosso Super User • ultima modifica di

              io l'ho provato e funziona alla grande...non ho permesso root ma solo di scrittura sulla cartella.

              Ho messo un cronjob stanotte...ed ha funzionato alla grande...10 db backuppati.. 😄

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • D
                default User Newbie • ultima modifica di

                Salve,
                grazie per questo script era una cosa che serviva molto anche a me (che sono un vero newbbio in materia)! Vorrei sapere se il risultato del backup fosse possibile inviarlo su un altro server oppure (meglio via email)... è cosa compLicata?
                Grazie ancora e saluti a tutti

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • T
                  tarnesh User Newbie • ultima modifica di

                  Ciao a tutti, mi chiamo Mattia, ho cercato su internet per trovare un modo di eseguire in automatico la sincronizzazione tra due database.
                  Ho visto qui che c'è il modo di eseguire il backup, mi chiedo se sia possibile usare questo backup per caricare i dati su un altro database.
                  Mi spiego meglio:
                  su server1 ho db1, su server2 ho db2, poi ho server3 che faccia da ponte.
                  Questo perchè server1 si trova dietro un firewall, e server3 è in grado di vedere entrambi.
                  io voglio che ogni notte db2 sia sincronizzato con db1, quindi vorrei uno script (php?) che viene cronnato ogni notte per eseguire il backup di db1 e per caricare questo backup su db2, però non ho assolutamente idea di come fare questa seconda parte.
                  Qualcuno saprebbe darmi una mano?
                  Grazie mille a tutti

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • D
                    danielix User Newbie • ultima modifica di

                    ciao a tutti, probabilmente ciò che sto per dire sbigottirà qualcuno ma...

                    questo tipo di script come si esegue? voglio dire basta salvarlo nella root del nostro sito e parte da solo o bisogna configurare qualcos'altro? (ora di avvio, eccetera...)

                    io ho visto anche questa discussione triplaw.claudiogarau.it/php/Automatizzare_i_Backup_di_MySQL_con_PHP.php

                    solo che rimando con il dubbio?

                    grazie per le vostre risposte.

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • A
                      ale90 User Attivo • ultima modifica di

                      Adesso lo provo anche io..
                      Ciao

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • P
                        pablito User • ultima modifica di

                        @Tuonorosso said:

                        Questo potrebbe essere utile...

                        ><?php
                          // Enter your MySQL access data 
                          echo '+DONE';  
                        ?>
                        ecc... ecc.....
                        
                        >```
                        
                        Grazie Tuonorosso
                        anch'io lo uso e devo dire che è semplicissimo e veloce                   
                        
                        Per il restore dei dati in caso di disatro  come si deve fare ?
                        Grazie
                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        Caricamento altri post
                        Rispondi
                        • Topic risposta
                        Effettua l'accesso per rispondere
                        • Da Vecchi a Nuovi
                        • Da Nuovi a Vecchi
                        • Più Voti