GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come configurare Override.conf separato per più istanze MySQL utilizzando Systemd

Se i servizi di sistema sono gestiti da systemd, il demone systemd dovrebbe essere a conoscenza della posizione del file PID del processo per avviarlo/arrestare/riavviarlo. Su un sistema con supporto systemd, "override.conf ” viene utilizzato per specificare sia “PIDFile " e "ExecStart ” con la posizione del file PID. Qualsiasi impostazione del file ID processo nel file delle opzioni MySQL (my.cnf) viene ignorata.

Questo post copre il caso in cui è necessario creare file "override.conf" separati per la gestione di più istanze MySQL sullo stesso server. Nell'esempio di file di configurazione seguente si presume che due istanze MySQL denominate "Server1" e "Server2" siano in esecuzione su una singola macchina CentOS/RHEL 7:

File di configurazione MySQL (/etc/my.cnf):

[mysqld@server1]
server_id = 1
port = 3307
datadir = /home/mysql57/data
socket = /home/mysql57/data/mysql_server1.sock
log-error = /home/mysql57/data/mysql_server1.err

[mysqld@server2]
server_id = 2
port = 3308
datadir = /var/lib/mysql
socket = /var/lib/mysql/mysql_server2.sock
log-error = /var/lib/mysql/mysql_server2.err

Passaggi per creare "override.conf" per queste due istanze:

1. Arresta qualsiasi istanza MySQL in esecuzione esistente.

2. Crea una nuova cartella con il nome dell'istanza specificato:

$ mkdir /etc/systemd/system/mysqld@[instance-name].service.d
Nota :Il nome dell'istanza deve essere uguale a quello specificato nel file di configurazione.
$ mkdir /etc/systemd/system/[email protected]
$ mkdir /etc/systemd/system/[email protected]

3. Crea "override.conf":

Ad esempio denominato "server1",

$ cd /etc/systemd/system/[email protected]
$ touch override.conf 

Copia le seguenti righe in override.conf:

[Service]
PIDFile=/home/mysql57/data/mysql_server1.pid
ExecStart=
ExecStart=/usr/sbin/mysqld --defaults-file=/etc/my.cnf --defaults-group-suffix=@server1 --daemonize --pid-file=/home/mysql57/data/mysql_server1.pid $MYSQLD_OPTS

Ad esempio denominato "server2",

$ cd /etc/systemd/system/[email protected]
touch override.conf

Copia le seguenti righe in override.conf:

[Service]
PIDFile=/var/lib/mysql/mysql_server2.pid
ExecStart=
ExecStart=/usr/sbin/mysqld --defaults-file=/etc/my.cnf --defaults-group-suffix=@server2 --daemonize --pid-file=/var/lib/mysql/mysql_server2.pid $MYSQLD_OPTS

4. Ricarica la configurazione di systemd per applicare le modifiche alla configurazione:

# systemctl daemon-reload

5. Avvia ciascuna delle istanze configurate:

# systemctl start mysqld@server1
# systemctl start mysqld@server2


Cent OS
  1. Come abilitare il registro delle query lente per MySQL

  2. Come configurare più ambienti di distribuzione per Juju??

  3. Come montare automaticamente un filesystem usando Systemd

  4. Come configurare una porta separata per SSH e SFTP su CentOS/RHEL

  5. Come configurare i gruppi di risorse Linux (cgroups) per MySQL

Come connettersi a MySQL usando PHP

Come installare e configurare MySQL su un server Windows

Come installare e configurare Zabbix su CentOS 7

Come configurare la replica MySQL Master-Slave su CentOS 7

Come creare più profili per Unity launcher in Ubuntu usando launcher-list-indicator

Come installare Tomcat 8 su CentOS 7 (istanze multiple)