Wczoraj, przy okazji artykułu o błędzie 1273 (HY000) podczas importowania bazy danych MySQL jako jedno z rozwiązań wskazałem aktualizację serwera MySQL do nowszej wersji (np. 5.7). Może ktoś powiedzieć, że łatwo mi mówić (pisać), bo on na serwerze ma np. Debiana 8 (Jessie), i tam takiej wersji w repozytorium nie znajdzie. Słuszna uwaga, ale zawsze można sięgnąć do źródła…
Serwer MySQL 5.7 w systemie Debian 8 (Jessie) i Debian 9 (Stretch)
W Debianie 8 obecnie znajdziemy serwer MySQL w wersji 5.5.59, i raczej nie ma co tu spodziewać się jakiejś rewolucji. Z kolei w Debianie 9 (Stretch) zamiast serwera MySQL znajdziemy serwer MariaDB. Niby oba serwery są ze sobą zgodne, ale widać, że powoli ich drogi zaczynają się chyba rozchodzić, i ciężko powiedzieć jak to będzie wyglądać za jakiś czas. Ja na razie trzymam się MySQL, choć cały czas obserwuje rozwój MariaDB.
Niezależnie od tego, czy chcemy nową wersję MySQL w Debianie 8 (lub np. 7), czy też wolimy MySQL od MariaDB w Debianie 9, nie ma problemu – wystarczy dokonać odpowiedniej modyfikacji w pliku „sources.list”:
sudo nano /etc/apt/sources.list
Dla systemy Debian 8 dodajemy:
# MySQL D8:
deb http://repo.mysql.com/apt/debian/ jessie mysql-5.7
deb-src http://repo.mysql.com/apt/debian/ jessie mysql-5.7
Dla systemu Debian 9 dodajemy:
# MySQL D9:
deb http://repo.mysql.com/apt/debian/ stretch mysql-5.7
deb-src http://repo.mysql.com/apt/debian/ stretch mysql-5.7
Dla innych (starszych lub w przyszłości nowszych) wersji w miejsce „jessie” czy „stretch” wstawiamy odpowiednią nazwę, np. „wheezy”. Choć wcześniej warto sprawdzić, czy dla konkretnej starszej wersji występuje serwer MySQL w jakiejś nowszej wersji.
Do tego jeszcze klucz/podpis:
wget -O /tmp/RPM-GPG-KEY-mysql https://repo.mysql.com/RPM-GPG-KEY-mysql
sudo apt-key add /tmp/RPM-GPG-KEY-mysql
Na koniec odświeżamy systemową listę dostępnych pakietów:
sudo apt-get update
Lub – jeśli serwer MySQL jest już w systemie – przeprowadzamy aktualizację:
sudo apt-get update -y && sudo apt-get upgrade -y && sudo apt-get dist-upgrade -y
W przypadku jakichś problemów zaczynamy od odinstalowania starszej wersji:
sudo apt-get autoremove mysql-server mysql-community-server mysql-client mysql-common
By zainstalować następnie nową wersję:
sudo apt-get install mysql-server mysql-client
Lub:
sudo apt-get install mysql-community-server mysql-client
Powyższym poleceniem (jednym z 2 ostatnich) również instalujemy serwer MySQL na nowym – jeszcze bez serwera baz danych – serwerze.
Standardowa wersja MySQL w Debian Jessie:
patryk@vps08:~$ mysql --version
mysql Ver 14.14 Distrib 5.5.59, for debian-linux-gnu (x86_64) using readline 6.3
Wersja po aktualizacji „ze źródła”:
patryk@vps08:~$ mysql --version
mysql Ver 14.14 Distrib 5.7.21, for Linux (x86_64) using EditLine wrapper
Moim zdaniem warto, choćby ze względu na możliwość używania dłuższych nazw baz danych – niby drobiazg, ale przy większej ilości baz na serwerze, nawet taka błahostka zaczyna mieć znaczenie… ;-)
- Home Assistant 2024.11, czyli „sekcje” domyślnym widokiem z opcją migracji, WebRTC oraz wirtualna kamera - 1970-01-01
- Black Friday w ZUS, czyli jest jeszcze kilka dni, by złożyć wniosek RWS i skorzystać z wakacji składkowych płacąc ZUS za grudzień 2024 - 1970-01-01
- Wakacje składkowe ZUS a zawieszenie działalności gospodarczej, czyli uważaj, bo być może nie będziesz mógł skorzystać (w 2024) - 1970-01-01
Niestety ale po aktualizacji mysql na Debian 8 jest problem z logowaniem do phpmyadmin. Nawet po wprowadzeniu rozwiązań z anglojęzycznych for zaloguje sie do phpmyadmin to do nowo utworzonej bazy już nie wejdę.