gestione backup senza php my admin?

5 risposte [Ultimo messaggio]
Ritratto di Euronymous
Euronymous
(Monster)
Offline
Monster
Iscritto: 21/01/2005
Messaggi: 231

ciao a tutti,
il mio problema è che ho un sito che hosto con i server di linux apache, mysql, e vorrei garantire la continuità del sito anche mentre sono su finestre, il problema è il seguente:
con php my admin in linux ho fatto il backup di tuti i miei database in un unico file .sql
e vorrei ripristinare questo backup su server mysql finestre solo che php my admin non parte proprio se cerco di ripristinare il backup ho provato con qualche comando da console mysql ma nulla mi dice che le tabelle non esistono vorrei sapere un modo per ricrearle tutte usando quel file sql insomma un comando da dare a console mysql>

grazie Wink

Ritratto di Euronymous
Euronymous
(Monster)
Offline
Monster
Iscritto: 21/01/2005
Messaggi: 231

F:\mysql\bin>mysql < f:\sql\linuxmax.sql -uroot
ERROR 1064 at line 19: You have an error in your SQL syntax. Check the manual t
hat corresponds to your MySQL server version for the right syntax to use near 'D
EFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci' at line

Credo sia un problema di compatibilità

eppure ho preso il file sql con il comando mysqldump
Sad

Ritratto di teuzzo
teuzzo
(Junior)
Offline
Junior
Iscritto: 04/03/2005
Messaggi: 35

mysqldump --compatible=xxx

dove xxx=ansi, mysql323, mysql40, postgresql, oracle, mssql, db2, maxdb, no_key_options, no_table_options, or no_field_options

Ritratto di amartino
amartino
(Junior)
Offline
Junior
Iscritto: 03/02/2005
Messaggi: 39

Tanto per iniziare vedo che scrivi una cosa strana
"F:\mysql\bin" , non capisco da dove viene fuori visto che parli di linux/apache/mysql ...... forse non hai detto esattamente come stanno le cose???
In ogni caso ti spiego come fare.

Premessa:
Devi possedere un file VALIDO che contenga il dump del tuo DB, supponiamo che questo file si chiami euronymous.sql

Apri la shell e ti posizioni dove si trova il file euronymous.sql
Verifica se all'interno del file euronymous.sql sono presenti all'inizio le seguenti righe
create database NOMEDATABASE;
use NOMEDATABASE;
se sono presenti devi saltare i passi numero 3 e 4.
Ovviamente NOMEDATABASE deve essere il nome reale del DB che stai trattando.

digiti da shell
PASSO 1) mysql -u root -pTUAPASSWORD
dove TUAPASSWORD e' la password di accesso al db per l'utente root, adesso dovresti trovarti con il prompt di mysql>
poi da prompt mysql digiti:
PASSO 2) drop database NOMEDATABASE;
PASSO 3) create database NOMEDATABASE;
PASSO 4) use NOMEDATABASE;
PASSO 5) source euronymous.sql

Questo e' quanto.
Fammi sapere come va. 8-)

P.S.
In un post precedente mi chiedevi di darti informazione su qualche manuale per mysql in italiano, io ti ho risposto con un link ricco a un sito pieno di manuali in italiano, hai trovato quello che cercavi sul sito che ti ho indicato in passato ?

Alfredo

Ritratto di Euronymous
Euronymous
(Monster)
Offline
Monster
Iscritto: 21/01/2005
Messaggi: 231

Tanto per iniziare vedo che scrivi una cosa strana
"F:\mysql\bin" , non capisco da dove viene fuori visto che parli di linux/apache/mysql ...... forse non hai detto esattamente come stanno le cose???

l mio problema è che ho un sito che hosto con i server di linux apache, mysql, e vorrei garantire la continuità del sito anche mentre sono su finestre,

Capito meglio ora? era per farti vedere che l'esportazione del database che ho fatto con linux tentavo di ripristinarla su finestre.

Cmq appunto con le guide che trovai c'era anche la spiegazione di mysqldump solo che i comandi che mi indichi sono per fare un database alla volta e il mio file .sql contiene tutti i database che avevo (li esportai col comando --all-database)

Ritratto di teuzzo
teuzzo
(Junior)
Offline
Junior
Iscritto: 04/03/2005
Messaggi: 35

Quote:

Euronymous ha scritto:
F:\mysql\bin>mysql < f:\sql\linuxmax.sql -uroot
ERROR 1064 at line 19: You have an error in your SQL syntax. Check the manual t
hat corresponds to your MySQL server version for the right syntax to use near 'D
EFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci' at line

Questo errore è classico se si fa un dump da mysql 4.1 (che ha dei cambiamenti sui charset rispetto alle versioni precedenti) e si esegue il file .sql su mysql precedenti.
Per questo si deve usare --compatible nel mysqldump.