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:

  1. Eseguire o invocare mysqld direttamente. Un esempio è meglio descritto in Eseguire MariaDB dalla directory dei sorgenti.
  2. Eseguire lo script di avvio mysqld_safe.
  3. 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.

Commenti

Sto caricando i commenti......
Content reproduced on this site is the property of its respective owners, and this content is not reviewed in advance by MariaDB. The views, information and opinions expressed by this content do not necessarily represent those of MariaDB or any other party.