Newsgroup: it.comp.lang.delphi
Titolo: mysql e delphi6 backup

ciao a tutti, esiste un componente o un qualche sistema per fare il dump
(backup di tutto il database, dati e struttura) di un db mysql remoto?
Simone


Se tu intendi un dump esiste mysqldump (lo trovi sotto la cartella bin in
Win o comunque sulla $PATH di Linux) che lanciato ad esempio come
ex. (win 32)
mysqldump -h Host -u Utente -p Password MIODATABASE > FILEDUMP.TXT
ti crea un dump del DB in formato ASCII. Il file conterrà la sequenza di
istruzioni per poter ricreare il DB (dati compresi) su un altro Host
utilizzando ad esempio da client il comando
ex.
mysql> \. FILEDUMP.TXT
Se lanci mysqldump con l'opzion e -d non vengono inseriti nel file dump
anche le righe per ricreare i dati del DB ma solo la struttura (tabelle ed
indici)
ex. (win 32)
mysqldump -h Host -u Utente -p Password MIODATABASE -d > FILEDUMP.TXT
Se vuoi fare un Back Up tieni presente che con MySql basta copiare i binari
(anche da un sistema all'altro Win32 --> Linux / Linux --> Win 32), da
sistemare in una sottocartella della cartella di riferimento di MySql nella
quale sono contenuti i dati, per avere una copia del DB "utilizzabile".
Saluti
Alberto Naccari
--------------------------------
Inviato via 
http://usenet.libero.it

 >
Opps..
Se intendevi invece la possibilità di fare il Dump del DB da codice, questo
è appena un pò più fastidioso!
Ciao


 ha scritto nel messaggio
news:213Z21Z149Z23Y...@usenet.libero.it...


 mysql presente su un hosting web
...
Se non vi è la possibilità di creare una connessione con il server MySql
(non con il server Web) non penso ci siano molte possibilità e questo per
ovvie ragioni.
Saluti


 ha scritto nel messaggio
news:213Z21Z149Z23Y1...@usenet.libero.it...


 la connessione la faccio usando i componenti zeos db
....
Scusami, ma non afferro il problema.
Se tu ti connetti al server MySql utilizzando un qualunque componente, sia
esso Zeos DbExpress o quel che vuoi, vuol dire che puoi "connetterti" al
server MySql. Se puoi "connetterti" puoi o utilizzare MySqlDump specificando
l'host nel quale risiede il server MySql o da codice tiri giů la struttura
delle tabelle, le ricrei, ne ricrei gli indici e cominci con un pň di select
a popolare le tabelle stesse.
Se invece intendevi dire che intendi utilizzare le librerie Zeos ti ripeto
la domanda:
Puoi collegarti direttamente al Servizio MySql?


 delle tabelle, le ricrei, ne ricrei gli indici e cominci con un pò di


 ... io riesco a loggarmi al server
Se riesci a loggarti al Server MySql puoi scegliere due strade:
Utilizzando MySqlDump
MySqlDump (è un programma che fa il dump del database). Il risultato del
Dump viene spedito al client nel quale è stato lanciato il programma. Puoi
quindi ottenere una copia locale (struttura e dati) del DB.
Via Codice
Hai due possibilità:
Prima possibilità
Se vuoi fare un backup dove risiede il server (o nella rete locale del
server) puoi utilizzare il comando di MySql
win..
BACKUP TABLE tabella[,altra_tabella...] TO 'c:\\percorso_di_backup'
linux..
BACKUP TABLE tabella[,altra_tabella...] TO '/percorso_di_backup'
Tale comando crea una copia dei file che corrispondono alle tabelle
specificate nella cartella di destinazione. In tal caso è opportuno fare il
lock delle tabelle prima di porcedere.
Il comando risponde a sua volta con una tabella nella quale riporta
Il nome della Tabella
Il tipo di operazione effettuata (ovviamente backup)
Tipo messaggio di risposta (error, info, warning)
Messaggio di risposta
Seconda possibilità
Ti strutturi tutta una tua procedura (come accennavo tiri giù struttura db,
indici, contenuti...) per ricreare un DB uguale a quello al quale sei
collegato. La vedo dura!
Tuttavia non capisco se, quando parli di remoto, intendi una rete locale o
una Wan.
Se stiamo parlando di una connessione Wan sei sicuro di volere fare un
Backup Locale o stai solo cercando di copiare il DB di qualcuno? :)


 ha scritto nel messaggio
news:213Z21Z149Z23Y1...@usenet.libero.it...


 di db)
....
Fai una copia via FTP dei file che costituiscono il DB. Mi pare la soluzione
piů verosimile.


 ha scritto nel messaggio
news:213Z21Z149Z23Y1...@usenet.libero.it...


 l'hosting non mi fa entrare nella cartella db, ma solo accedere via sql
...
Non hai molte possibilità. A questo punto o ti fai dare accesso alla
cartella contente il tuo DB o utilizzi MySqlDump, a meno che tu non intenda
dire che accedono al database le tue applicazioni residenti sull'host. In
tal caso vedo praticabile solo la prima.
