Mantieni la versione del database
Introduzione
Con la soluzione server di Easy Redmine, c'è il vantaggio di ospitare la propria applicazione e di avere la possibilità di controllarla completamente. Ciò è, tuttavia, legato alla responsabilità di mantenere l'intero ambiente e l'infrastruttura su cui è in esecuzione l'applicazione. Questo articolo è una linea guida (abbastanza precisa) per mantenere aggiornati MySQL o MariaDB.
Hai un errore nella sintassi SQL
Durante l'aggiornamento dell'applicazione viene visualizzato un messaggio di errore contenente "Hai un errore nella sintassi SQL; controlla il manuale che corrisponde alla versione del tuo server MySQL per la sintassi corretta da usare vicino ... "appare nel registro.
Causare
Significa che il tuo database è obsoleto e non può funzionare con la richiesta che la nostra applicazione gli invia. Semplicemente non lo capisce.
Soluzione
Devi aggiornare il tuo database.
Come aggiornare il database?
Controlla la tua versione recente del database con il seguente comando.
mysql --versione
Ti mostrerà che hai MySQL 5.5 o meno o MariaDB 10.1 o meno. Ora, a seconda del tipo di DB (Mysql o MariaDB), aggiorna il database. Notare che questa istruzione è per Debian 10, che al momento è il sistema operativo principale che supportiamo. Le versioni di DB supportate, per ora, sono: MySQL 5.7 o superiore, MariaDB 10.3 o superiore.
MySQL
Prima di tutto, eseguiamo il backup dei database.
mysqldump --all-databases> all_databases.sql
Scarica l'ultimo repository di pacchetti APT.
wget https://dev.mysql.com/get/mysql-apt-config_0.8.13-1_all.deb
Assicurati di scaricare l'ultima versione del pacchetto. Quindi installalo usando dpkg.
sudo dpkg -i mysql-apt-config_0.8.13-1_all.deb
Ti verrà richiesto con una finestra di dialogo, chiedendo quale versione installare. Se MySQL 5.8 non è presente, premere Invio, quindi selezionare la versione 5.8 dall'elenco, selezionare OK. Quindi esegui l'aggiornamento del pacchetto.
sudo apt-get update
Vedrai che il pacchetto MySQL è nell'elenco.
sudo apt-get install mysql-server
Questo è il passaggio più importante da non perdere, aggiorna i database esistenti.
sudo mysql_upgrade -u root -p
Il passaggio finale, riavviare il database.
sudo /etc/init.d/mysql riavvio
MariaDB
Fai un backup completo.
--user = mariabackup_user \ --password = mariabackup_passwd \ --target-dir = / backup / preupgrade_backup
Conferma il completamento con successo dell'operazione di backup. Il backup deve essere preparato.
$ sudo mariadb-backup --prepare \ --target-dir = / data / backup / preupgrade_backup
Confermare il completamento con successo dell'operazione preparata. I backup dovrebbero essere testati prima di essere considerati affidabili. Disinstalla la vecchia versione. Quando si aggiorna a una nuova versione principale di MariaDB Community Server, è necessario rimuovere l'installazione esistente di MariaDB Community Server prima di installare la nuova versione di MariaDB Community Server. In caso contrario, il gestore dei pacchetti rifiuterà di installare la nuova versione di MariaDB Community Server. Prima di poter disinstallare la vecchia versione, dobbiamo prima interrompere il processo corrente del server MariaDB.
$ sudo systemctl ferma mariadb
Disinstallare tutti i pacchetti di MariaDB Community Server. Si noti che viene utilizzato un carattere jolly per garantire che tutti i pacchetti di MariaDB Community Server vengano disinstallati.
$ sudo apt rimuove "mariadb- *"
Disinstalla anche il pacchetto Galera. Il nome del pacchetto dipende dalla versione specifica di MariaDB Community Server. Quando si aggiorna da MariaDB Community Server 10.4, il pacchetto si chiama galera-4.
$ sudo apt rimuove galera-4
Quando si aggiorna da MariaDB Community Server 10.3 o precedente, il pacchetto si chiama galera.
$ sudo apt rimuove galera
Prima di procedere, verifica che tutti i pacchetti di MariaDB Community Server siano disinstallati. Il seguente comando non dovrebbe restituire alcun risultato.
$ apt list --installed | grep -i -E "mariadb | galera"
Installa la nuova versione. MariaDB Corporation fornisce un repository di pacchetti APT per Debian 10. Installa tramite APT (Debian / Ubuntu). Per configurare i repository di pacchetti APT, utilizzare i seguenti comandi.
$ 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
Installa MariaDB Community Server e le dipendenze dei pacchetti.
$ sudo apt installa mariadb-server mariadb-backup libmysqlclient-dev
Configura MariaDB. L'installazione carica solo MariaDB Community Server sul sistema. MariaDB Community Server richiede la configurazione prima che il server del database sia pronto per l'uso. Aggiornare la directory dei dati utilizzando il seguente comando.
$ sudo mariadb-aggiornamento