Backups

FIXME

  • Resume on blocked device : mount
  • Run job: run job=Backup\ hazel
  • Cleanup catalogue database: dbcheck -f -c /etc/bacula/bacula-dir.conf

FIXME

FIXME

FIXME

Afin de se protéger d'une éventuelle perte de données suite à une défaillance matérielle, un réplicat MySQL a été mis en place sur moreen.

Création du réplicat

Sur le master

Dans la section [mysqld] du fichier /etc/mysql/my.cnf rajouter :

server-id               = 1
log_bin                 = /var/log/mysql/mysql-bin.log

Créer l'utilisateur de réplication :

mysql> CREATE USER 'repl'@'%' IDENTIFIED BY '<password>';
mysql> GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%';

Fermer et verrouilleur les tables :

mysql> FLUSH TABLES WITH READ LOCK;

:!: Ne surtout pas fermer le terminal après cette commande !

Créer un snapshot des bases (depuis un autre terminal) :

shell> mysqldump --all-databases --master-data > dbdump.db

:!: Vous pouvez maintenant fermer le premier terminal ou taper la commande suivante :

mysql> UNLOCK TABLES;

Sur le slave

Dans la section [mysqld] du fichier /etc/mysql/my.cnf rajouter :

[mysqld]
server-id=2

Éteindre le serveur MySQL et le relancer sans activer la réplication :

shell> mysqld --skip-slave-start

Configurer les options de réplication :

mysql> CHANGE MASTER TO
    -> MASTER_HOST='mysql.alt.tf',
    -> MASTER_USER='repl',
    -> MASTER_PASSWORD='<password>';

Importer le dump fait sur le master :

shell> mysql -p < dbdump.db

Lancer la réplication :

mysql> START SLAVE;

Vous pouvez maintenant relancer MySQL normalement.

Reprise du réplicat après désynchronisation

Sur le master

Fermer et verrouilleur les tables :

mysql> FLUSH TABLES WITH READ LOCK;

:!: Ne surtout pas fermer le terminal après cette commande !

Créer un snapshot des bases (depuis un autre terminal) :

shell> mysqldump --all-databases --master-data > dbdump.db

:!: Vous pouvez maintenant fermer le premier terminal ou taper la commande suivante :

mysql> UNLOCK TABLES;

Sur le slave

Désactiver la réplication :

mysql> STOP SLAVE;

Importer le dump fait sur le master :

shell> mysql < dbdump.db

Lancer la réplication :

mysql> START SLAVE;

Restauration des bases depuis le réplicat

Sur le slave

Désactiver la réplication :

mysql> STOP SLAVE;

Créer un snapshot des bases :

shell> mysqldump --all-databases > dbdump.db

Sur le master

Importer le dump fait sur le slave :

shell> mysql -p < dbdump.db

:!: Suivre en entier la procédure de reprise du réplicat après désynchronisation

  • sysadmin/backups.txt
  • Last modified: 2017/04/24 15:13
  • by Benjamin Collet