joj misko ne bi ti bio u kozi ...
osnovno pitanje - koliki downtime mozes da podneses?
drugo - vrlo vazno pitanje .. taj 4.0 el imas u njemu tabele u kojima cuvas utf8 karaktere?
prvo sto uradis ...
-pogasis sve aplikacije koje im pristupaju
-ugasis oba mysql servera
-bekapujes datadir od oba servera na neku drugu masinu
-bekapujes config od oba servera na neku drugu masinu
onda ih upalis nazad (ne palis aplikacije - dakle nista ne pise po serveru od kada si napravio backup onih datadirova)
sa 5.0 uradis
Code:
mysqldump --all-databases --create-options --no-data > struktura_petice.sql
mysqldump --all-databases --create-options --disable-keys --order-by-primary --routines --dump-date --hex-blob > bekap_petice.sql
i sa peticom si generalno gotov. proveri za svaki slucaj u vrku bekap_petice.sql da li lepo setuje client character set na utf8 (Set names) da bi ti sve kako treba prebacio
za 4.0 je malo komplikovanije :(
prvo odradi damp strukture
Code:
mysqldump --all-databases --create-options --no-data > struktura_cetke.sql
onda rucno, sve kolone gde ti se cuvaju utf8 karakteri (text, char, varchar ...) prebaci u BLOB !!!
dakle npr:
Code:
alter table luzer modify nadimak blob
onda napravi mysqldump cetvorke
Code:
mysqldump --all-databases --create-options --disable-keys --order-by-primary --routines --dump-date --hex-blob > bekap_cetvorke.sql
ovde eventualno mozes da ides bez --all-databases pa da navedes sve baze na kraju, bez mysql baze posto nju svejedno neces bas hteti a restorujes u peticu kasnije ... mozes da je dampujes zasebno da sacuvas usere ...
(proveri da li sve ove opcije postoje u mysqldump-u od cetvorke ne znam napamet)
ako nemas neku komplikovanu matricu usera i privilegija, bolje da u oba dampa bekapujes samo baze koje ti trebaju i batalis mysql bazu kompletno a napravis usere posle rucno
kada reinstaliras mysql 5.0 (ili 5.1) ... samo mu uturis stari 5.0 datadir, pustis mysql_upgrade script i voila .. 5.0 si restorovo ... (onaj mysqldump je bio samo rezerva posto ipak formatiras disk)
za 4.0 tabele je sad malo cimanje ... sada restorujes iz mysqldump-a 4.0 sql .. (onaj gde je sve vec prebaceno u blob
Code:
mysql < bekap_cetvorke.sql
i sada rucno, opet, za svaku kolonu koju si prebacio u blob, vratis je nazad u "sta je bila" samo sa validnim character setom
Code:
alter table luzer modify nadimak varchar(100) character set utf8;
i to je to ..