Taigi nusprendžiau šiandien atnaujinti MySQL 4.1 į 5.0. Tokia mintis kilo po to, kai vakar teko susidurti su MySQL 4.0 duomenų bazių importavimu į MySQL 4.1 ir teko pasidomėti apie MySQL atnaujinimus / migraciją. Vis vien ankščiau ar vėliau būtų to reikėję.
Pasiskaitęs MySQL dokumentaciją nusprendžiau, kad jokių sunkumų atnaujinant maniškį MySQL 4.1 neturėtų kilti.
Pasidariau atsarginę duomenų kopiją:
/usr/local/bin/mysqldump -u root -pSLAPTAZODIS –opt –all-databases > /root/databasebackup.sql
Norėdamas išvengti ilgo downtime’o, pirmiausiai susikompiliavau mysql50-client’ą:
main# cd /usr/ports/databases/mysql50-client/
main# make WITH_CHARSET=utf8 WITH_XCHARSET=all WITH_COLLATION=utf8_lithuanian_ci
Tada išinstaliavau mysql41-client’ą:
main# pkg_delete -x mysql-client
Ir iš karto suinstaliavau mysql50-client’ą:
main# make install clean
Po šių mano veiksmų viskas, kas naudojo MySQL’ą, ir toliau kuo puikiausiai veikė. Dabar reikėjo atnaujinti MySQL’ą:
cd /usr/ports/databases/mysql50-server/
make WITH_CHARSET=utf8 WITH_XCHARSET=all WITH_COLLATION=utf8_lithuanian_ci BUILD_OPTIMIZED=yes BUILD_STATIC=yes
Sukompiliavus išjungiau serverį:
/usr/local/etc/rc.d/mysql-server.sh stop
Tada išinstaliavau senąjį:
pkg_delete -x mysql-server
Instaliavau naująjį:
main# make install clean
Ir paleidau:
/usr/local/etc/rc.d/mysql-server.sh start
Bendras downtime laikas neviršijo pusės minutės, užtruko tik apie 10-15 sekundžių, o tai, manau, yra labai gerai.
Atnaujinau MySQL lenteles:
mysql_fix_privilege_tables –password=ROOTSLAPTAZODIS
Po atnaujinimo restartavau:
/usr/local/etc/rc.d/mysql-server.sh restart
Baigta. Bent jau mano sistemos atveju, tai jau buvo pabaiga ir viskas puikiai veikė ;-)
aciu