Backup database Mysql compresso in Vb.net

di il
1 risposte

Backup database Mysql compresso in Vb.net

Ciao a tutti.

Vorrei creare una copia di un db MySql zippata.

Da riga di comando lo faccio tramite  questo codice, e funziona perfettamente :

mysqldump -uroot -pMiaPassword NomeDatabase | gzip > dbzippato.sql.gz

Ho provato a farlo da Vb.Net usando questo codice:

Dim myProcess As New Process()
myProcess.StartInfo.FileName = "cmd.exe"
myProcess.StartInfo.WorkingDirectory = Application.StartupPath
myProcess.StartInfo.UseShellExecute = False
myProcess.StartInfo.RedirectStandardInput = True
myProcess.StartInfo.RedirectStandardOutput = True
myProcess.StartInfo.RedirectStandardError = True
myProcess.Start()
Dim myStreamWriter As StreamWriter = myProcess.StandardInput
Dim mystreamreader As StreamReader = myProcess.StandardOutput
Dim mystreamerror As StreamReader = myProcess.StandardError
myStreamWriter.WriteLine("mysqldump --user=root --password=MiaPassword --host=localhost NomeDatabase | gzip > dbzippato.sql.gz")
myStreamWriter.WriteLine(String.Format("exit"))
myStreamWriter.Close()
Dim msg As String = mystreamerror.ReadToEnd()
mystreamerror.Close()
If msg.Length > 0 Then MsgBox(msg)
myProcess.WaitForExit()
myProcess.Close()

Ma mi ritorna errore "comando gzip non riconosciuto" .

Invece se faccio semplicemente una copia del database:

myStreamWriter.WriteLine("mysqldump --user=root --password=MiaPassword --host=localhost NomeDatabase > copiadb.sql")

la copia del database viene correttamente effettuata.

Come posso risolvere?

Grazie

Chico

1 Risposte

  • Re: Backup database Mysql compresso in Vb.net

    Mi rispondo da solo : stai invecchiando.

    Basta copiare il file  gzip.exe nella cartella dell'applicazione da cui lanci il programma.

    (non elimino il post perchè potrebbe tornare utile a qualcuno).

Devi accedere o registrarti per scrivere nel forum
1 risposte