Áttérés MySQL 5.1 verzióról 5.5 verzióra bináris módszerrel

Ez a cikk a MySQL 5.1 verzióról az 5.5 verzióra való áttérést veszi sorra, mégpedig az első lépésben ismertetett mentés/visszaállítás módszer helyett a bináris módszert alkalmazva.

Megjegyzés: Ez az ismertető a MySQL 5.0 verzióról korábban megkezdett frissítési folyamat második lépésének leírását tartalmazza (előző rész).

A mentés/visszaállítás módszert az MySQL 5.0 verzióról 5.1 verzióra való áttérésnél található meg.

Eljárás (bináris)

A következő lépések feltétlenül szükségesek az áttérés megfelelő, biztonságos végrehajtásához.

  1. Az első és legfontosabb dolog a biztonsági mentés készítése az adatbázisokról. Ez történhet egyetlen sql  közös fájlba vagy adatbázisonként külön sql fájlokba.
    Fontos, hogy mentés készüljön a mysql adatbázisról is, mert ebben vannak a felhasználók és az engedélyek!
    Az adatmentés előtt állítsa le az összes alkalmazást, amely használja MySQL adatbázist.
  2. Ellenőrizni kell, hogy mely portok függnek az aktuálisan telepített mysql-client verziótól, ez a következő paranccsal tehető meg:
    # portupgrade -frn mysql-client

    Ez a parancs megpróbálja újrafordítani az összes olyan portot, amely függ a mysql-client porttól, mivel azonban az -n kapcsoló is meg lett adva, ezért nem lesz végrehajtva semmi (csak egy teszt fut le). A parancs eredményeként egy rövidebb-hosszabb listát fog kapni azokról a portokról, amelyekhez szükséges, hogy a mysql-client port helyesen működjön.

    ...
    + databases/mysql51-client (mysql-client-5.1.67 -> mysql-client-5.1.67)
    + databases/mysql51-server (mysql-server-5.1.67 -> mysql-server-5.1.67)
    + security/cyrus-sasl2 (cyrus-sasl-2.1.26_2 -> cyrus-sasl-2.1.26_2)
    + mail/postfix28 (postfix-2.8.12_2,1 -> postfix-2.8.12_2,1)
    + mail/dovecot (dovecot-1.2.17 -> dovecot-1.2.17)
    + mail/dovecot-sieve (dovecot-sieve-1.2+0.1.19 -> dovecot-sieve-1.2+0.1.19)
    + mail/dovecot-managesieve (dovecot-managesieve-0.11.13 -> dovecot-managesieve-0.11.13)
    + databases/p5-DBD-mysql (p5-DBD-mysql-4.021 -> p5-DBD-mysql-4.021)
    + databases/mysql51-scripts (mysql-scripts-5.1.67 -> mysql-scripts-5.1.67)
    + security/maia (maia-1.0.3.r1575_3 -> maia-1.0.3.r1575_3)
    + security/amavisd-new (amavisd-new-2.8.0_2,1 -> amavisd-new-2.8.0_2,1)
    ...
  3. Mentse el a listát egy biztonságos helyre, mivel később szükség lesz még rá (a listáról eltávolíthatja a mysql-client, mysql-server és mysql-scripts portokat, mivel ezek egyébként is frissítve lesznek, ill. az utolsóra nem lesz többé szükség).
  4. Távolítsa el a mysql51-client, mysql51-server és mysql51-scripts portokat.
    # cd /usr/ports/databases/mysql51-client
    # make deinstall
    # cd /usr/ports/databases/mysql51-server
    # make deinstall
    # cd /usr/ports/databases/mysql51-scripts
    # make deinstall
  5. Mivel ez most bináris (in-place) módszer, ezért nem kell eltávolítani semmit sem a MySQL adatútvonaláról. Ez FreeBSD esetén alapértelmezésben a /var/db/mysql útvonalon található. Mielőtt a következő lépés végrehajtaná, ellenőrizze még egyszer, hogy rendelkezik-e érvényes és működő biztonsági mentéssel adatbázisairól!
    Fontos, hogy a MySQL konfigurációs fájljáról (/usr/local/etcl/my.cnf) is készítsen biztonsági mentést, mert a beállításokat át kell vinni majd az új verzió konfigurációs fájljába.
  6. Most telepítse a mysql55-server portot, ez automatikusan telepíteni fogja a mysql55-client portot is.
    # cd /usr/ports/databases/mysql55-server
    # make install clean
  7. Hozza létre a /usr/local/etc/my.cnf konfigurációs fájlt a megfelelő my-{small,medium,large,huge}.cnf fájlból a /usr/local/share/mysql útvonalról (a beállítások megváltoztak). Vigye át a szükséges beállításokat a régi konfigurációs fájlból az új konfigurációs fájlba.
    Állítsa be a /usr/local/etc/my.cnf fájl megfelelően:

    # chown mysql:mysql /usr/local/etc/my.cnf
    # chmod 644 /usr/local/etc/my.cnf
  8. Indítsa el a MySQL 5.5 adatbázis kiszolgálót.
    # /usr/local/etc/rc.d/mysql-server start

    Normál esetben a MySQL kiszolgáló elindul, de több hibaüzenetet is kiír a naplófájlba, amik majd a frissítés után el fognak tűnni. Az adatbázisok frissítését a következő paranccsal kell végrehajtani:

    # mysql_upgrade -u root -p

    Ezután érdemes újraindítani a MySQL kiszolgálót, és megnézni a naplófájlt, hogy minden rendben működik-e.

    # /usr/local/etc/rc.d/mysql-server restart
  9. Most, hogy már telepítve van és fut a MySQL 5.5, de az összes érintett szoftver még az 5.1-es klienst használja, ezért most még ne indítsa újra a szoftvereket. Vegye elő a portok elmentett listáját, és fordítsa újra minden egyes elemét.
    Kezdje pl. a postfix és hozzá szükséges portokkal:

    # portupgrade -fO postfix
    # portupgrade -fO p5-DBD-mysql
    ...

    A portok frissítése után ellenőrizze le a portok adatbázisát a következő paranccsal, hogy eltávolítsa belőle a régi kliensre mutató függőségeket:

    # pkgdb -F
  10. Végezetül indítsa el a korábban leállított programokat.