Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    55

    restore database

    Salve a tutti,
    decvo sviluppare una applicazione in Java che mi permetta prima di creare un database, senza specificare lo schema e poi su questo, di fare il restore di un database con dei dati di cui è stato fatto il backup in precedenza.
    Quest'ultimo database è del tipo : db.backup.
    Ho cercato dovunque e non ho trovato niente!!!!
    Spero possiate aiutarmi!!!!
    Grazie a tutti!!!

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    che database? in che formato è db.backup?
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    55
    Ho creato un db in postgresql ed ho creato il backup con pgAdminIII, in formato compress. il backup contiene sia la struttura che i dati.
    Ma ho notato che quando faccio il restore sempre tramite pgAdminIII mi carica due volte i dati nelle tabelle, ad esempio se nella tabella 1 di partenza avvo come dati 2,3,4 dopo il rispristino nella tabella 1 mi ritrovo 2,3,4,2,3,4.
    Se ci fosse un modo per fare il backup in tutta sicurezza vi ringrazierei tantissimo!!!!

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Ok. Non so come funzioni il sistema di backup di Postgres (o meglio, non conosco pgAdminIII), però, ad esempio, in phpmyadmin per MySQL c'è l'opzione per aggiungere un DROP TABLE (IF EXIST) al processo di creazione del dump del database... in caso di restore quindi non ci si trova con quel problema (chiaramente, è sempre meglio uppare il backup su un database xyz e poi se tutto è andato bene, rinominare il backup xyz... non si sa mai )
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    55
    Ho risolto il problema del backup, sbagliavo a scrivere una cosa.
    Il miorpoblema più grande è fare il ripristino del db da una applicazione Java. Non so che comandi sql utilizzare. Non posso utilizzare pgAdminIII ,PURTROPPO, perchè l'applicazione deve caricarsi il db all'inizio!!!!
    Come posso fare a ripristinare il db da Java?

  6. #6
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    vedi quale sarebbe l'operazione di restore per PostgresSQL (ossia, dato un dump fatto da shell, quale è il comando o la sequenza di istruzioni per farne il restore): puoi sempre appoggiarti a Runtime e fare l'exec dell'istruzione da shell.

    Per esempio in mysql per il restore di un dump (.sql) faresti una cosa del genere (via shell)

    codice:
    mysql --verbose --user=username --password=password DB_NAME < percorso/file/di/dump.sql
    Mentre per il dump faresti una cosa del genere:
    codice:
    mysqldump --user=username --password=password DB_NAME1 DB_NAME2 ... DB_NAMEN > percorso/file/di/dump.sql
    il che andrebbe a creare l'sql dei dati presenti nelle tabelle dei database db_name1, db_name2,..., db_namen
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    55
    Ci provo, anche se non sono molto esperta in questo settore, speravo di trovare un comando specifico come SELECT o CREATE.
    SPERIAMO BENE

  8. #8
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    55
    Ho provato a creare un nuovo db utilizzando il seguente comando. non mi da errori durante la compilazione ne quando lo eseguo, soltanto che il db non viene creato. Cosa sbaglio?



    try{
    Runtime rt = Runtime.getRuntime();
    rt.exec("createdb.exe prova2323 --username=postgr --password=postgr");
    }catch(IOException e){
    e.getMessage();
    }

  9. #9
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    A me, sempre con mysql, questa va:

    codice:
    String[] command = new String[] {"cmd", "/k", "mysql --user=root --password=password --execute=\"CREATE DATABASE `from_java`\""};
    Process p = Runtime.getRuntime().exec(command);
    Ossia, usando una delle altre forme di exec per passare parametri alla console.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

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.