Udržujte verzi databáze
Úvod
Se serverovým řešením Easy Redmine je výhoda hostování vlastní aplikace a schopnost ji zcela ovládat. To je však svázáno se zodpovědností za údržbu celého prostředí a infrastruktury, na které aplikace běží. Tento článek je (celkem přesným) vodítkem k udržování aktuálního stavu MySQL nebo MariaDB.
Máte chybu v syntaxi SQL
Během aktualizace aplikace se zobrazí chybová zpráva obsahující „Máte chybu ve své syntaxi SQL; zkontrolujte příručku, která odpovídá verzi vašeho serveru MySQL, zda máte správnou syntaxi, kterou chcete použít poblíž ... “se objeví v protokolu.
Způsobit
Znamená to, že vaše databáze je zastaralá a nemůže pracovat s požadavkem, který jí zasílá naše aplikace. Prostě tomu nerozumí.
Řešení
Musíte aktualizovat svou databázi.
Jak aktualizovat databázi?
Pomocí následujícího příkazu zkontrolujte svou nejnovější verzi databáze.
mysql --verze
Ukáže vám, že máte buď MySQL 5.5 nebo méně, nebo MariaDB 10.1 nebo méně. Nyní v závislosti na typu DB (MySQL nebo MariaDB) upgradujte databázi. Vezměte prosím na vědomí, že tato instrukce je pro Debian 10, což je právě teď hlavní operační systém, který podporujeme. Podporované verze DB jsou prozatím: MySQL 5.7 nebo vyšší, MariaDB 10.3 nebo vyšší.
MySQL
Nejprve si vytvořme zálohu databází.
mysqldump-všechny databáze> all_databases.sql
Stáhněte si nejnovější úložiště balíčků APT.
wget https://dev.mysql.com/get/mysql-apt-config_0.8.13-1_all.deb
Nezapomeňte si stáhnout nejnovější verzi balíčku. Poté jej nainstalujte pomocí dpkg.
sudo dpkg -i mysql-apt-config_0.8.13-1_all.deb
Zobrazí se dialogové okno s dotazem, kterou verzi nainstalovat. Pokud MySQL 5.8 neexistuje, stiskněte Enter, poté vyberte ze seznamu verzi 5.8 a vyberte OK. Poté spusťte aktualizaci balíčku.
sudo apt-get update
Uvidíte, že v seznamu je balíček MySQL.
sudo apt-get nainstalovat mysql-server
Toto je nejdůležitější krok, který si nemůžete nechat ujít, upgradujte stávající databáze.
sudo mysql_upgrade -u root -p
Posledním krokem je restartování databáze.
restartujte sudo /etc/init.d/mysql
MariaDB
Proveďte úplnou zálohu.
--user = mariabackup_user \ --password = mariabackup_passwd \ --target-dir =/backup/preupgrade_backup
Potvrďte úspěšné dokončení operace zálohování. Zálohování musí být připraveno.
$ sudo mariadb-backup --prepare \ --target-dir =/data/backup/preupgrade_backup
Potvrďte úspěšné dokončení připravené operace. Zálohy by měly být testovány, než budou důvěryhodné. Odinstalujte starou verzi. Při upgradu na novou hlavní verzi MariaDB Community Server je nutné před instalací nové verze MariaDB Community Server odebrat stávající instalaci MariaDB Community Server. V opačném případě správce balíčků odmítne nainstalovat novou verzi MariaDB Community Server. Než bude možné starou verzi odinstalovat, musíme nejprve zastavit aktuální proces MariaDB Serveru.
$ sudo systemctl stop mariadb
Odinstalujte všechny balíčky MariaDB Community Server. Všimněte si toho, že k odinstalování všech balíčků MariaDB Community Server se používá zástupný znak.
$ sudo apt odebrat "mariadb-*"
Odinstalujte také balíček Galera. Název balíčku závisí na konkrétní verzi MariaDB Community Server. Při upgradu z MariaDB Community Server 10.4 se balíček nazývá galera-4.
$ sudo apt odstranit galera-4
Při upgradu z MariaDB Community Server 10.3 nebo staršího balíčku se říká galera.
$ sudo apt odstranit galeru
Než budete pokračovat, ověřte, že jsou odinstalovány všechny balíčky MariaDB Community Server. Následující příkaz by neměl vracet žádné výsledky.
$ apt list -nainstalováno | grep -i -E "mariadb | galera"
Nainstalujte si novou verzi. MariaDB Corporation poskytuje úložiště balíčků APT pro Debian 10. Instalace pomocí APT (Debian/Ubuntu). Chcete -li konfigurovat úložiště balíčků APT, použijte následující příkazy.
$ sudo apt install wget $ wget https://downloads.mariadb.com/MariaDB/mariadb_repo_setup $ echo "2de6253842f230bc554d3f5ab0c0dbf717caffbf45ae6893740707961c8407b7 mariadb_repo_setup" \ | sha256sum -c-$ chmod +x mariadb_repo_setup $ sudo ./mariadb_repo_setup \ --mariadb-server-version = "mariadb-10.5" $ sudo apt update
Nainstalujte MariaDB Community Server a závislost balíků.
$ sudo apt install mariadb-server mariadb-backup libmysqlclient-dev
Konfigurujte MariaDB. Instalace načte do systému pouze MariaDB Community Server. MariaDB Community Server vyžaduje konfiguraci, než je databázový server připraven k použití. Upgradujte Data Directory pomocí následujícího příkazu.
$ sudo mariadb-upgrade