Pagina 1 di 6 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 53
  1. #1
    Utente di HTML.it L'avatar di Tr|k`Tr4k
    Registrato dal
    Jul 2002
    Messaggi
    2,766

    Esportare ed importare una tabella nel modo più veloce possibile

    Vorrei sapere qual'e' il modo più veloce per esportare e poi importare una tabella in un database.
    Il problema è che la tabella principale si trova su un server mentre l'altra tabella è su un altro, e non ho la possibilità di utilizzare la stessa, almeno il mio hoster non mi permette di farlo o io dovrei avere il mio server aperto a tutti...
    In pratica adesso agisco cosi':
    1) Vado su phpmyadmin del mio server ed esporto la tabella che mi interessa e la salvo sul desktop.
    2) Vado su phpmyadmin del server che mi da l'hoster ed importo quella tabella sovrascrivendo la vecchia.

    Volevo sapere se c'è un modo piu' veloce perchè ogni volta devo andare a prendere user e password e perdo un casino di tempo.
    Si potrebbe creare uno script che io lancio ed in automatico fa tutto?
    Avete altri consigli?

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    209
    se il procedimento non deve essere automatico il metodo più veloce è la migrazione di dati di MySQL che puoi scaricare da http://www.mysql.com/products/tools/migration-toolkit/ se invece devi farlo in maniera automatica, da quello che so dirti di mysql, dovresti conservare i dati del database A nella macchina B per poi reinserirli con una query, e credimi, se la tabella è molto popolosa (>10000 righe) il procedimento può richiedere MOLTO tempo.

  3. #3
    si è possibile basta che crei la connessione al db tramite script php
    e nel campo quey scrivi i comando per salvare il file.

    A memoria non ricordo ma se cerci qualcosa come Backup mysql qualcosa trovi.
    3/6/2003 è morto l'angelo della mia vita..
    www.markwebinformatica.net
    My BLOG

  4. #4
    TROVATO E CERCATO DI CREARE QUALCOSA

    PROVA COSI MA NON GARANTISCO L'HO SCRITTO VELOCE
    secondo me dovrebbe funzionare

    Prova a vedere se funziona :


    Codice PHP:

    set_time_limit
    (0); //Se i db sono grossi eviti il timeout dello script, fallo anche sulla config di apache
         
    $host='indirizzo ip server';
             
    $user='user database';
             
    $psw'password database';

         
    $conmysql_connect($host,$user,$psw)or die ("Non riesco a connettermi al server ...  ");
                
    $sql "SHOW DATABASES;";
            
    $rst mysql_query($sql);
            while (
    $r mysql_fetch_array($rst)) 
            {
                
    $db $r[0];
                
    exec("mysqldump -u nomeutente  $db > $db.sql  ");
                echo 
    " Creato il file ".$db.".sql
    "
    ;
            }

        
        
    exec("mysqldump -u nomeutente --all-database > server.sql  ");
        echo 
    " Creato il file server.sql
    "

    3/6/2003 è morto l'angelo della mia vita..
    www.markwebinformatica.net
    My BLOG

  5. #5
    Utente di HTML.it L'avatar di Tr|k`Tr4k
    Registrato dal
    Jul 2002
    Messaggi
    2,766
    SPiNALeX, per 1000 righe intendi 1000 id? se e' cosi' siamo a circa 600

    Barman@83 non sai se esiste qualcosa di gia' fatto?
    Non vorrei fare bordello con la tabella originale, altrimenti rischio di perdere tutto...

  6. #6
    Utente di HTML.it L'avatar di Tr|k`Tr4k
    Registrato dal
    Jul 2002
    Messaggi
    2,766
    Originariamente inviato da Barman@83
    TROVATO E CERCATO DI CREARE QUALCOSA

    PROVA COSI MA NON GARANTISCO L'HO SCRITTO VELOCE
    secondo me dovrebbe funzionare

    Prova a vedere se funziona :


    Codice PHP:

    set_time_limit
    (0); //Se i db sono grossi eviti il timeout dello script, fallo anche sulla config di apache
         
    $host='indirizzo ip server';
             
    $user='user database';
             
    $psw'password database';

         
    $conmysql_connect($host,$user,$psw)or die ("Non riesco a connettermi al server ...  ");
                
    $sql "SHOW DATABASES;";
            
    $rst mysql_query($sql);
            while (
    $r mysql_fetch_array($rst)) 
            {
                
    $db $r[0];
                
    exec("mysqldump -u nomeutente  $db > $db.sql  ");
                echo 
    " Creato il file ".$db.".sql
    "
    ;
            }

        
        
    exec("mysqldump -u nomeutente --all-database > server.sql  ");
        echo 
    " Creato il file server.sql
    "

    azz non avevo visto che l'hai fatto ora provo e ti faccio sapere subito

  7. #7
    Utente di HTML.it L'avatar di Tr|k`Tr4k
    Registrato dal
    Jul 2002
    Messaggi
    2,766
    ma questo script mi crea un file sql, no?
    Vorrei capire dove lo salva e poi per importarlo in automatico sul nuovo server, come faccio?

  8. #8
    si lo salva nella cartella dove ha messo il file php poi per salvarlo nel dbase basta salvare il file sql in una variabile e inviarla come query
    3/6/2003 è morto l'angelo della mia vita..
    www.markwebinformatica.net
    My BLOG

  9. #9
    Utente di HTML.it L'avatar di Tr|k`Tr4k
    Registrato dal
    Jul 2002
    Messaggi
    2,766
    Originariamente inviato da Barman@83
    si lo salva nella cartella dove ha messo il file php poi per salvarlo nel dbase basta salvare il file sql in una variabile e inviarla come query
    ah ok ho capito, pero' penso che questo mi salva tutto il database, mentre a me interessa solamente una tabella, e' possibile?

  10. #10
    si basta che modifichi le query che ti ho scritto su

    Conosci un po di SQL ?
    se non sai come fare ti do una mano io basta dirmelo.

    @edit:
    Stamattina grazie a SPiNALeX che mi ha fatto risparmiare tempo posso seguirti un pochino.
    3/6/2003 è morto l'angelo della mia vita..
    www.markwebinformatica.net
    My BLOG

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 © 2025 vBulletin Solutions, Inc. All rights reserved.