Può capitare che serva installare MariaDB facendo in modo che i file dei DB non vadano a finire nella posizione classica (/var/lib/mysql). Se vogliamo mantenere l’installazione dai pacchetti (cosa utile per chi volesse un’installazione il più standard possibile) possiamo seguire questi passi (su Centos 8, ipotizzando di mettere i DB in /srv, ma potete usare il mount point che volete)
- Installare MariaDB:
yum install -y mariadb-server - Avviare MariaDB (essenziale per permettere la creazione dei database di sistema):
systemctl start mariadb - Stoppare MariaDB:
systemctl stop mariadb - Spostare la directory con i DB creata dal primo avvio:
mv /var/lib/mysql /srv/ - Creare di nuovo la directory /var/lib/mysql
mkdir /var/lib/mysql - Sistemare i diritti:
chown mysql:mysql /var/lib/mysql
(queste ultime due operazioni sono necessari perché la directory /var/lib/mysql deve rimanere per ospitare il socket, il cui spostamento può creare problemi) - Editare il file di configurazione di mariaDB
nano /etc/my.cnf.d/mariadb-server.cnf
cambiando solo la riga “datadir=” da /var/lib/mysql a /srv/mysql - Avviare MariaDB:
systemctl start mariadb - Verificare che il servizio sia partito correttamente:
systemctl status mariadb - Securizzare l’installazione creando la password di root e togliendo ciò che non serve:
mysql_secure_installation - Verificare che si acceda a MariaDB:
mysql -u root -p
(inserire la password di root scelta al punto precedente e verificare che si vedano i DB si sistema con il comando “show databases”)
Ora MariaDB è in esecuzione con i DB ospitati nella directory /srv/mysql
Aggiunta del 24/05/2022: aggiornamento di MariaDB nella configurazione presente alla versione 10.5 in ambiente di produzione.
Per procedere all’aggiornamento dei questo tipo di installazione in maniera sicura seguire i seguenti passi:
- Fermare MariaDB:
systemctl stop mariadb-server
2. Disinstallare mariadb-server e i pacchetti a corredo (vengono disinstallati da soli, come dipendenze):
yum remove mariadb-server
3. Verificare l’avvenuta disinstallazione:
rpm -qa| grep mariadb
Installare la versione 10.5:
4. Aggiungere il repository:
curl -LsS -O https://downloads.mariadb.com/MariaDB/mariadb_repo_setup
sudo bash mariadb_repo_setup –mariadb-server-version=10.5
5. Aggiornare la cache:
sudo yum makecache
6. Procedere all’installazione vera e propria:
sudo dnf module reset mariadb -y
sudo yum install MariaDB-server MariaDB-client MariaDB-backup
7. Ripristinare il file /etc/my.cnf.d/mariadb-server.cnf (che l’installazione rinomina con l’estensione .rpmsave)
mv /etc/my.cnf.d/mariadb-server.cnf.rpmsave /etc/my.cnf.d/mariadb-server.cnf
8. Riavviare il server:
systemctl start mariadb-server
Se il server dovesse non partire il problema potrebbe risiedere nella posizione del file PID. In questo caso creare la sottodirectory /run/mariadb e assegnarle i diritti corretti:
sudo mkdir /run/mariadb
sudo chown mysql:mysql /run/mariadb
Infine riavviare il server:
systemctl start mariadb-server
Verificare il corretto funzionamento e aggiornamento:
mysql -u root -p [INSERIRE LA PASSWORD]