Changer le répertoire de mysql sous debian wheezy

Voici un petit script avec quelques explications pour changer le répertoire de mysql (datadir) sous debian wheezy.

Explications :

La ligne permettant de changer le répertoire des données de mysql est la ligne contenant datadir dans le fichier /etc/mysql/my.cnf

datadir  = /app/mysql

Une fois cette ligne modifiée, il faut réinstaller la base de données. Redémarrer simplement mysql ne fonctionne pas. La commande mysql_install_db est prévue à cet effet. Elle crée les fichiers et dossiers nécessaires dans le nouveau répertoire.

Après cela, le redémarrage de mysql fonctionnera. Cependant, un message d’erreur apparaitra. La réinstallation de la base n’a pas conservé l’utilisateur dédié à la maintenance

Message d’erreur au lancement de mysql

ERROR 1045 (28000): Access denied for user 'debian-sys-maint'@'localhost' (using password: YES)

La solution consiste à créer l’utilisateur demandé en récupérant le mot de passe dans le fichier /etc/mysql/debian.cnf

Script shell :

#!/bin/bash
/etc/init.d/mysql stop
# Install database in directory configured in my.cnf
mysql_install_db
# Restart mysql
/etc/init.d/mysql start
#Get password from config file
MYSQL_PWD_DEBIAN=`grep password /etc/mysql/debian.cnf | cut -d= -f2 | head -n 1 | tr -d ' '`
echo "Password for debian-sys-maint = $MYSQL_PWD_DEBIAN"
# Create debian user
mysql -u root -e "GRANT ALL PRIVILEGES ON *.* TO 'debian-sys-maint'@'localhost' IDENTIFIED BY '$MYSQL_PWD_DEBIAN';"

Laisser un commentaire


+ 4 = onze


NOTE - Vous pouvez utiliser les éléments et attributs HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>