Su Debian 8, puoi usare il meccanismo Systemd: non è più necessario mysqld_multi
.
NOTA: utilizzo la versione MariaDB! Non sono sicuro che funzioni con il pacchetto MySQL "classico".
Da /lib/systemd/system/mariadb@.service
:
Versione multi istanza di mariadb. Perché se esegui più versioni contemporaneamente. Utilizzato anche per mariadb @ bootstrap per bootstrap Galera.
creare il file di configurazione /etc/mysql/conf.d/ my {nome istanza} .cnf
avvia come systemctl avvia mariadb@{instancename}.server
Quindi, crea un file /etc/mysql/conf.d/myserver2.cnf
e specifica al suo interno i nuovi file pid / socket / datadir e la porta di rete:
[mysqld]
user = mysql
pid-file = /var/run/mysqld/mysqld-server2.pid
socket = /var/run/mysqld/mysqld-server2.sock
port = 3307
basedir = /usr
datadir = /var/lib/mysql-server2
tmpdir = /tmp
EDIT: fai attenzione che la prima istanza di MySQL non legga questo file di configurazione, con !includedir /etc/mysql/conf.d/*
in fondo a /etc/mysql/my.cnf
. In tal caso, sostituisci !includedir
con uno !include
di ciascun file di configurazione ALTRO DI myserver2.cnf:
#!includedir /etc/mysql/conf.d/*
!include /etc/mysql/conf.d/conf1.cnf
!include /etc/mysql/conf.d/confX.cnf
Il documento ufficiale di MySQL indica che devi nominare [mysqld]
come [mysqld@server2]
( https://dev.mysql.com/doc/refman/5.7/en/using-systemd.html#systemd-multiple-mysql-iststances ) ma questo non funziona con MariaDB . Quindi lascialo [mysqld]
.
Prima di avviare il nuovo demone, non dimenticare di creare il datadir e i file necessari:
mkdir /var/lib/mysql-server2
chown mysql:mysql /var/lib/mysql-server2
mysql_install_db --datadir=/var/lib/mysql-server2
Ricarica anche la configurazione del demone systemd:
systemctl daemon-reload
E se vuoi avviare questo demone all'avvio:
systemctl enable mariadb@server2
Per avviarlo:
service mariadb@server2 start