Avviare e arrestare MariaDB automaticamente
Se si esegue MariaDB in un ambiente server, è quasi sempre desiderabile che si avvii quando la macchina viene accesa, in modo che MariaDB funzioni quando funziona il server, e si arresti correttamente quando questo viene spento.
Il binario del server MariaDB si chiama mysqld. Come gli altri binari di MariaDB, è chiamato così per preservare la compatibilità con il più diffuso MySQL.
Esiste la possibilità di avviare mysqld in vari modi:
- Eseguire o invocare mysqld direttamente. Un esempio è meglio descritto in Eseguire MariaDB dalla directory dei sorgenti.
- Eseguire lo script di avvio
mysqld_safe
. - Eseguire lo script di avvio
mysql.server
.
Lo script mysql.server
avvia mysqld
dopo aver selezionato la directory di installazione di MariaDB, e chiama mysqld_safe
. Aggiungendo una riga appropriata user
al gruppo [mysqld]
nel file my.cnf file si fa in modo che il server venga eseguito da quell'utente.
Se si ha installato MariaDB in un percorso non standard, potrebbe essere necessario modificare lo script mysql.server
perché funzioni correttamente.
mysql.server
funziona come init script standard in stile SysV. Pertanto è possibile utilizzarlo con gli argomenti start
e stop
in questo modo:
mysql.server start mysql.server stop
Per configurare MariaDB in modo che si avvii e si arresti automaticamente su Linux utilizzando lo script mysql.server
, occorre aggiungerlo al sistema di init della distribuzione in uso; di solito, lo si copia in /etc/init.d/
e si creano dei symlink con i nomi appropriati nelle directory /etc/rcX.d/
(dove 'X' è un numero tra 0 e 6).
I prossimi esempi seguono la convenzione storica di rinominare lo script mysql.server
in 'mysql
' quando lo si copia in /etc/init.d/
.
Il primo passo, nella maggior parte delle distribuzioni Linux, è copiare lo script mysql.server
in /etc/init.d/
e renderlo eseguibile:
cd /path/to/your/mariadb-version/support-files/
cp mysql.server /etc/init.d/mysql
chmod +x /etc/init.d/mysql
Ora occorre soltanto creare i symlink con i nomi appropriati. Sia sulle distribuzioni basate su RPM, sia su quelle basate su Debian, vi sono dei tool che lo fanno automaticamente. Si consulti la documentazione della distribuzione se nessuno di questi funziona, e si seguano le istruzioni per generare i symlink o per crearli automaticamente.
Sulle distribuzioni basate su RMP (come Fedora e CentOS), si esegua chkconfig
:
chkconfig --add mysql
chkconfig --level 345 mysql on
Sulle distribuzioni basate su Debiam, si esegua update-rc.d
:
update-rc.d mysql defaults
Su FreeBSD, gli script di avvio di trovano in /usr/local/etc/rc.d/
, e quando si copia lo script mysql.server
è meglio rinominarlo in modo che segua lo schema *.sh
, in questo modo:
cd /path/to/your/mariadb/support-files/
cp mysql.server /usr/local/etc/rc.d/mysql.server.sh
Come detto sopra, si consulti la documentazione della distribuzione in uso per ulteriori informazioni su come avviare servizi come MariaDB all'avvio del sistema.
Si veda Opzioni di avvio di mysqld per informazioni sulle opzioni di configurazione di mysqld
.