Mise a jour multi-instances

This commit is contained in:
vlaborie 2018-10-02 16:38:17 +02:00
parent cb31b56a6a
commit 2355984899

View file

@ -1265,7 +1265,7 @@ Avant toute opération, **il est nécessaire de commenter cette ligne** dans le
#user = mysql
~~~
Et de rajouter ces lignes :
Et de rajouter ces lignes dans `/etc/mysql/conf.d/50-multi.cnf` :
~~~{.ini}
[mysqld_multi]
@ -1300,7 +1300,7 @@ Créer ensuite le *datadir* :
# chmod 700 /srv/mysql-instances/foo
~~~
Ajouter ces lignes dans `/etc/mysql/conf.d/zzz_evolinux.cnf` :
Ajouter ces lignes dans `/etc/mysql/conf.d/zzz_mysqld1.cnf` :
~~~{.ini}
[mysqld1]
@ -1369,6 +1369,53 @@ On préfère passer la commande « shutdown » en interne :
> **Note** : a priori cela revient à envoyer un signal SIGTERM (kill -15) au process mysqld
Mettre en place le script d'init suivant dans `/etc/init.d/mysqld_instances` :
~~~
#!/bin/sh
#
### BEGIN INIT INFO
# Provides: mysqld_instances
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Should-Start: $network $time
# Should-Stop: $network $time
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start and stop the mysql database server daemon
# Description: Controls the main MySQL database server daemon "mysqld"
# and its wrapper script "mysqld_safe".
### END INIT INFO
#
set -e
set -u
mkdir -p /run/mysqld_instances && chown root:mysql /run/mysqld_instances && chmod 770 /run/mysqld_instances
case "$1" in
start)
mysqld_multi start
;;
stop)
for pid in /run/mysqld_instances/*/mysqld.pid; do
pkill -F "${pid}"
done
;;
status)
mysqld_multi report
;;
restart)
$0 stop
$0 start
;;
*)
echo "Usage: $0 {start|stop|status|restart}"
exit 1
esac
exit 0
~~~
### Nettoyage
Si le *mysqld* principal n'est pas utilisé, on désactivera le script d'init.d /etc/init.d/mysql (en ajoutant `exit 0`