Premetto che lavoro in Java & Postgre ma sto procedendo astraendomi completamente dal db, ovvero tutto il mio codice scritto ad oggi sarebbe valido anche con MySql o Oracle. Ho le seguenti esigenze:
1) CREAZIONE. Non voglio che l'utente che installa il mio programma sul suo server o sul suo hosting remoto debba creare il db da script usando il solito tool remoto di amministrazione (PG Admin o phpMyAdmin) ed eseguendo il mio file database.sql. Voglio risparmiargli questa fatica; deve solo uploadare il mio war ed al primo avvio il db si creerà da solo con uno script apposito. E' tecnicamente possibile! Quando usavo .net, per questa operazione usavo il trucco di far connettere la mia applicazione al superutente e/o ad un "superdatabase" (scusate, era molti anni fa, ricordo pochino!) che di default era sempre presente sin dalla installazione di SQL Server. E si creava da sé che era una meraviglia. Come fare lo stesso? Sappiate solo che il motore di database sarà sempre "locale" rispetto al percorso dell'applicazione.
2) BACKUP. Voglio che con un pulsante nella mia web application si scarichi un file backup.sql. Esiste un comando SQL (magari per PG ma valido anche per altri database) che esegua un backup completo del database? Qualcosa da "propinargli" usando il formalismo di una normale query, come un normale comando SQL.
3) RIPRISTINO. Come sopra.
Grazie a tutti.