Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2004
    Messaggi
    1,344

    [MySQL]: Backup e ripristino err 150

    SERVER remoto: MySQL 5.1.53 PHPMyAdmin 2.8.2.4
    SERVER locale: MySQL 5.1.41 PHPMyAdmin 3.2.4

    Ogni notte sul server remoto, tramite un CronJob, eseguo il backup del database con la seguente funzione, che esegue il backup e lo comprime con gzip:

    Codice PHP:
    system("/usr/bin/mysqldump --opt --user=$db_utente --password='$db_password' --host=$db_host $db_name | gzip > $nome_completo"$ris_backup);    // Linux compresso 
    La cosa strana è questo:

    1) se lo ripristino sul server remoto ricevo l'errore '#1005 - Can't create table 'nome_tabella' (errno: 150)'
    2) se lo ripristino sul server in locale funziona correttamente
    3) se dal server locale, una volta ripristinato, eseguo l'esportazione ed utilizzo quest'ultima per eeguire il ripristino sul server remoto funziona correttamente

    Premesso che solitamente l'errore in questione è dovuto a problemi con le foreing key, non capisco perchè l'errore si verifica solo sul remoto e solo senza ripassare tramite il locale.

    C'è qualche problema con la versione? Oppure devo modificare in qualche modo il comando per la creazione del backup?

    grazie
    ciao

  2. #2
    Utente di HTML.it
    Registrato dal
    Jan 2011
    Messaggi
    1,469
    0) preliminarmente ti suggerisco pbzip2 se hai più core. arc con più core su macchine a 32 bit

    1) metti foreign_key_checks a zero nel file dump (ripristinalo alla fine). tipicamente crea prima il file con bastano eco >, dumpi con >>, aggiungi il set a 1 con >>

    2) l'ipotesi ovviamente è che il nome della tabella non sia riservato, lo dò per scontato

    3) non usare FK

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