Création de scripts de sauvegarde de base de données MySQL
Vous pouvez créer des scripts à utiliser pour sauvegarder votre base de données MySQL. Il n'est pas nécessaire d'arrêter votre base de données pour effectuer une sauvegarde. Pour sauvegarder la base de données MySQL, créez les deux scripts suivants :
- pre-db-backup-mode.sh : ce script ferme toutes les tables ouvertes et verrouille l'ensemble des tables des bases de données avec un verrou de lecture global.
- post-db-backup-mode.sh : ce script libère tous les verrous.
Vous pouvez spécifier les scripts à exécuter sur les noeuds Base de données MySQL dans les Paramètres des scripts de pré-exécution/post-exécution de l'assistant de sauvegarde.
Procédez comme suit :
- Connectez-vous au serveur de sauvegarde en tant qu'utilisateur root.
- Créez le script pre-db-backup-mode.sh à l'aide du code suivant :
#!/bin/bash#
dbuser=root
dbpwd=rootpwd
lock_mysqldb(){
(
echo "flush tables with read lock;"
sleep 5
) | mysql -u$dbuser -p$dbpwd ${ARGUMENTS} }
}
lock_mysqldb &
PID="/tmp/mysql-plock.$!"
touch ${PID}
Remarque : Spécifiez les valeurs des variables dbuser et dbpwd telles qu'elles sont définies dans votre base de données MySQL.
- Créez le script post-db-backup-mode.sh à l'aide du code suivant :
#!/bin/bash
killcids(){
pid="$1"
cids=`ps -ef|grep ${pid}|awk '{if('$pid'==$3){print $2}}'`
for cid in ${cids}
do
echo ${cid}
kill -TERM ${cid}
done
echo -e "\n"
}
mysql_lock_pid=`ls /tmp/mysql-plock.* | awk -F . '{print $2}'`
[ "$mysql_lock_pid" != "" ] && killcids ${mysql_lock_pid}
rm -fr /tmp/mysql-plock.*
- Définissez une autorisation d'exécution pour les deux scripts.
- Placez les deux scripts à l'emplacement suivant :
/opt/Arcserve/d2dserver/usr/prepost/
- Connectez-vous à l'interface Web de l'Agent Arcserve UDP (Linux).
- Ouvrez l'assistant de sauvegarde et naviguez jusqu'à l'onglet Options avancées.
- Dans l'option Paramètres des scripts de pré-exécution/post-exécution, sélectionnez le fichier de script pre-db-backup-mode.sh dans la liste déroulante Avant prise du cliché.
- Dans l'option Paramètres des scripts de pré-exécution/post-exécution, sélectionnez le fichier de script pre-db-backup-mode.sh dans la liste déroulante Après prise du cliché.
- Soumettez le job de sauvegarde.
Le job de sauvegarde est soumis.
Les scripts servent à sauvegarder la base de données MySQL.
Remarque : L'Agent Arcserve UDP (Linux) prend en charge les clichés de niveau volume. Pour assurer la cohérence des données, tous les fichiers de données de la base de données doivent être situés sur un même volume.