Przed aktualizacją koniecznie należy wykonać kopię wszystkich baz danych.
root@server:/# mysqldump -u root -p --all-databases > all_databases.sql
Aktualnie posiadaną wersję sprawdzimy poleceniem:
root@server:/# mysql -V
lub
root@server:/# mysql --version
W pierwszym kroku aktualizujemy system:
root@server:/# apt-get update root@server:/# apt-get upgrade
Następnie nową wersję serwera baz danych instalujemy poleceniem:
root@server:/# apt-get install mysql-server
W trakcie instalacji zostanie odinstalowana z systemu poprzednia wersja serwera baz danych i zainstalowana najnowsza.
Sprawdzenie tabel na ich zgodność z posiadaną wersją serwera baz danych wykonamy poleceniem:
root@server:/# mysql_upgrade -u root -p
lub z wymuszeniem sprawdzania:
root@server:/# mysql_upgrade --force -u root -p
Jeżeli w logach mamy podobne do poniższych wpisy:
[ERROR] Function 'innodb' already exists [Warning] Couldn't load plugin named 'innodb' with soname 'ha_innodb.so'. [ERROR] Function 'federated' already exists [Warning] Couldn't load plugin named 'federated' with soname 'ha_federated.so'. [ERROR] Function 'blackhole' already exists [Warning] Couldn't load plugin named 'blackhole' with soname 'ha_blackhole.so'. [ERROR] Function 'archive' already exists [Warning] Couldn't load plugin named 'archive' with soname 'ha_archive.so'.
Należy z tabeli „plugin” w bazie danych o nazwie „mysql” usunąć odpowiednie pluginy:
DELETE FROM mysql.plugin WHERE name='innodb'; DELETE FROM mysql.plugin WHERE name='federated'; DELETE FROM mysql.plugin WHERE name='blackhole'; DELETE FROM mysql.plugin WHERE name='archive';
Jeżeli mamy problem ze startem serwera baz danych podczas startu systemu, wystarczy wykonać poniższe polecenie:
root@server:/# update-rc.d mysql defaults