en
Wybierz język
  • en
  • de
  • fr
  • es
  • br
  • ru
  • jp
  • kr
Tłumaczenie SI
  • ee
  • ae
  • cn
  • vn
  • id
  • eu
  • il
  • gr
  • no
  • fi
  • dk
  • se
  • tr
  • bg
  • nl
  • it
  • pl
  • hu
  • ro
  • ua
  • cs

Uaktualnij bazę danych (MySQL) do Percona

Wprowadzenie

Od wersji 11 tylko obsługa Easy Redmine Perkona Serwer bazy danych. W tym podręczniku dowiesz się, jak uaktualnić do tego optymalizującego wydajność serwera DB.

Kroki

1. Sprawdź swoją najnowszą wersję MySQL

Wersje Percona Server są kompatybilne tylko z ich odpowiednikami MySQL. tzn. MySQL 5.6 należy zastąpić tylko Percona Server 5.6. Próba użycia niezgodnych wersji może doprowadzić do uszkodzenia tabeli lub uniemożliwić uruchomienie serwera.

Aby sprawdzić, której wersji aktualnie używasz, najpierw połącz się z MySQL przy użyciu swojego aktualnego hasła roota:

mysql -u root -p

Następnie znajdź aktualnie zainstalowaną wersję:

mysql -wersja

Powinno to określić, czy musisz zainstalować Percona Server 5.5 czy 5.6. Najważniejszym przypadkiem jest to, że używasz MariaDB 10.0, który powinien zostać zastąpiony Percona Server 5.6. Jeśli używasz wersji MySQL starszej niż 5.5, przed kontynuowaniem powinieneś najpierw zaktualizować MySQL do wersji 5.5 lub nowszej.

2. Usuń MySQL

Zanim zainstalujemy serwer Percona, będziemy musieli usunąć wszystkie aktualnie zainstalowane pakiety MySQL lub MariaDB, ponieważ nie należy próbować uruchamiać obu jednocześnie na tych samych danych.

!!! Przed kontynuowaniem powinieneś mieć kopię zapasową swoich danych i plików konfiguracyjnych. !!!

Przed odinstalowaniem MySQL zaleca się zatrzymanie serwera bazy danych, aby zapobiec uszkodzeniu danych w przypadku, gdy proces nie zostanie bezpiecznie zatrzymany podczas usuwania pakietu:

usługa mysql stop

W przypadku serwerów opartych na Debianie pakiety serwera i klienta MySQL muszą zostać usunięte:

apt-get usuń mysql-server mysql-client mysql-common apt-get autoremove

3. Zainstaluj serwer Percona

Percona Server może nie znajdować się w domyślnych repozytoriach Twojej dystrybucji Linuksa, ponieważ Percona zarządza własnymi repozytoriami, aby aktualizacje były przekazywane użytkownikom tak szybko, jak to możliwe. Dlatego przed instalacją będziemy musieli ręcznie dodać repozytoria Percona APT. Postępuj zgodnie z poniższymi instrukcjami dla systemu operacyjnego Twojego serwera.

Pakiet Debiana wydany przez Perconę jest podpisany, co oznacza, że ​​APT musi zostać poinformowany o nowym kluczu podpisywania:

apt-key adv --keyserver keys.gnupg.net --recv-keys 1C4CBDDCCD2EFD2A

Zanim podejmiemy kolejny krok, upewnij się, że znasz dystrybucję, której aktualnie używasz. Jeśli nie masz pewności, której wersji dystrybucji używasz, możesz wykonać następujące polecenie:

lsb_release -c

Po upewnieniu się, z której dystrybucji korzystasz, możemy dodać nowe repozytoria Percona, dołączając następujące wiersze do pliku /etc/apt/sources.list:

nano /etc/apt/sources.list

Dodaj te wiersze na dole pliku, upewniając się, że zastąpiłeś DIST nazwą swojej dystrybucji (tzn. zamieniłbyś DIST na buster lub bullseye itp.):

deb http://repo.percona.com/apt DIST główna deb-src http://repo.percona.com/apt DIST główna

Po zapisaniu pliku źródłowego pakiety Percony powinny być następnie przypięte, aby zapewnić, że pakiety z Percony będą zawsze miały priorytet nad pakietami z domyślnych repozytoriów twojej dystrybucji. Aby to zrobić, najpierw tworzymy nowy plik preferencji dla APT:

dotknij /etc/apt/preferences.d/00percona.pref

Teraz otwórz ten plik w /etc/apt/preferences.d/00percona.pref za pomocą wybranego edytora tekstu (Vim, nano itp.), dodaj następujące wiersze i zapisz:

Pakiet: * Pin: wydanie o=Percona Development Team Pin-Priorytet: 1001

Wreszcie, gdy źródła zostaną dodane i przypięte, lista pakietów może zostać zaktualizowana i możemy zainstalować pakiet Percona Server.

(Tylko nowe) W przypadku nowego Dropleta zaleca się zainstalowanie wirtualnego pakietu percona-server-server, który zainstaluje wersję Percona Server zalecaną przez zespół Percona:

apt-get update apt-get install percona-server-server

(Tylko zamiennik) Zapoznaj się ze zlokalizowaną wcześniej wersją MySQL lub MariaDB. Aby zastąpić wersję 5.5, użyj pakietu percona-server-server-5.5 i percona-server-server-5.6 na 5.6. MariaDB 10.0 należy zastąpić Percona Server 5.6.

apt-get update apt-get install percona-server-server-5.6

Jeśli to polecenie zakończy się bez błędów, Percona Server zostanie zainstalowany i pomyślnie uruchomiony. Jeśli jednak podczas instalacji pojawią się błędy, upewnij się, że masz wystarczającą ilość wolnej pamięci. Więcej informacji o wszelkich błędach uruchamiania można znaleźć w pliku dziennika Percona Server pod adresem /var/log/mysqld.log.

(Tylko nowe) Podczas instalacji w nowym systemie podczas procesu instalacji może zostać wyświetlony monit o ustawienie hasła użytkownika root bazy danych. W tej sytuacji zalecane jest również uruchomienie mysqlsecureinstallation, aby upewnić się, że nie pozostały żadne oczywiste problemy z bezpieczeństwem:

/usr/bin/mysql_secure_installation

4. Skonfiguruj Perconę

Jeśli zastąpiłeś istniejącą instalację MySQL, powinieneś zrobić kopię swojego pliku konfiguracyjnego, który można teraz skopiować z powrotem. Prawdopodobnie możesz pominąć tę sekcję, chociaż przykładowe ustawienia mogą okazać się przydatne.

Jeśli jednak instalujesz Percona Server na nowym Droplet, będziesz musiał dodać plik konfiguracyjny, ponieważ Percona Server działa obecnie na domyślnych wartościach, które mogą nie być optymalne dla Twojego Dropleta. Przed pierwszą aktualizacją konfiguracji zaleca się zatrzymanie Percona Server, ponieważ lokalizacja pliku PID może ulec zmianie. W przypadku przyszłych zmian konfiguracji, po wprowadzeniu zmian powinien wystarczyć prosty restart.

usługa mysql stop

Oto przykład konfiguracji, której używamy na naszych serwerach w chmurze. Ten plik powinien być zapisany do /etc/mysql/my.cnf

[mysqld] user = mysql pid-file = /var/run/mysqld/mysqld.pid socket = /var/run/mysqld/mysqld.sock port = 3306 basedir = /usr datadir = /home/mysql tmpdir = /tmp # log = /var/log/mysql/mysqld.log log-error = /var/log/mysql/mysqld.err tmp_table_size = 128M max_heap_table_size = 128M lc-messages-dir = /usr/share/mysql skip-external-locking bind -address = 0.0.0.0 key_buffer_size = 64M max_allowed_packet = 64M thread_stack = 192K thread_cache_size = 8 # myisam-recover = BACKUP # niedostępny w nowej wersji max_connections = 1000 query_cache_limit = 16M query_cache_size = 256M query_cache_type-shake skip-clcharace-cl collation_server = utf1mb8_unicode_ci character_set_server = utf4mb8 # zezwól na uwierzytelnianie na podstawie metody haszowania hasła default_authentication_plugin=mysql_native_password innodb_file_format = BARRACUDA innodb_file_per_table = 4 db_db_nodb_buffer_Ms print raz w innodb_buffer_Ms lock raz w innodb_buffer_Mprint nodb_flush_log_at_trx_commit = 1 # zapisuje na dysku w blokach 4096M bez pamięci podręcznej innodb_flush_method = O_DIRECT innodb_log_buffer_size = 2M innodb_log_file_size = 8GB # wydajność łączenia join_buffer_size = 8M sort_buffer_size = 1M table_open_TSTRA_kompatybilność_8_TABELA_otwartej_pliku = 8M ,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION innodb_large_prefix = 4 wygasa_logs_days = 250000 max_binlog_size = 5.6M slow_ffery_log = 56 slow_query_log_file = /q-l/is.mys.

5. Sprawdź instalację

Teraz, gdy mamy zainstalowany i uruchomiony Percona Server, możemy upewnić się, że wszystko poszło zgodnie z planem, przeprowadzając kilka końcowych kontroli. Najpierw połącz się z bazą danych za pomocą klienta mysql, logując się przy użyciu hasła użytkownika root bazy danych:

mysql -u root -p

Od razu widzimy, że wersja serwera w tekście połączenia określa teraz Percona Server. Za pomocą polecenia SHOW VARIABLES możemy zagłębić się w dalsze szczegóły dotyczące konkretnej wersji, która została zainstalowana:

POKAŻ ZMIENNE, TAKIE JAK "wersja%";

Następnie możesz sprawdzić, czy korzystamy z XtraDB dla dowolnych tabel opartych na InnoDB:

POKAŻ SILNIKI DO PRZECHOWYWANIA\G

Wynik pokaże ten blok wśród wielu innych:

... *************************** 8. rząd ***************** ********** Silnik: InnoDB Obsługa: DEFAULT Komentarz: Percona-XtraDB, Obsługuje transakcje, blokowanie na poziomie wiersza i klucze obce Transakcje: TAK XA: TAK Punkty zapisu: TAK ... 9 wierszy w zestawie ( 0.00 s) 

Pole komentarza w odpowiedzi pokazuje, że silnik XtraDB został załadowany jako silnik dla tabel opartych na InnoDB. Na koniec zaleca się upewnienie się, że wszystkie bazy danych i tabele są poprawnie odczytywane na nowym serwerze.

Jeśli wszystkie te testy zostały wykonane pomyślnie, oznacza to, że serwer Percona Server działa pomyślnie. Jeśli jednak którakolwiek z tych kontroli nie powiodła się, upewnij się, że poprawnie wykonałeś wszystkie wcześniejsze kroki tego artykułu, zwracając szczególną uwagę na dopasowanie numerów wersji MySQL do numerów wersji Percona Server.

Wypróbuj Easy Redmine w 30-dniowym bezpłatnym okresie próbnym

Pełne funkcje, ochrona SSL, codzienne kopie zapasowe w Twojej geolokalizacji