L’usage d’un Raspberry implique de ne pas s’imaginer stocker des données sur la carte SD. Pour permettre un stockage plus large, j’ai déporté mes données MySQL sur mon NAS. La démarche est aisée.
J’ai déjà précisé l’installation du mysql, j’enchaîne directement avec la manipulation qui nous intéresse ici.
Dans mon profil, j’ajoute la ligne alias ms="sudo /etc/init.d/mysql"
et le lance pour prise en compte. Puis, je lance le status
pour vérification, et l’arrêt avant les grandes manoeuvres:
vi ~/.profile
=> ajout de : alias ms="sudo /etc/init.d/mysql"
. ~/.profile
ms status
ms stop
Sur mon Synology ds212j, je déclare un nouveau partage avec un quota pour éviter un remplissage abusif. Et je déclare dans le /etc/fstab la ligne qui suit :
sudo vi /etc/fstab
MonNAS:/volume1/R-mysql /mnt/mysql nfs defaults 0 0
Après quoi je vais brancher l’espace de données actuel sur ce partage. Les manipulations avec le compte root sont nombreuses, c’est pourquoi je passe directement sur ce profile. Il faut créer le point de montage et lui montre les bons droits puis lancer le mount
.
sudo su - root
mkdir /mnt/mysql
chown mysql:mysql /mnt/mysql
chmod 700 /mnt/mysql
mount -a
cp -Rpv /var/lib/mysql/* /mnt/mysql
mv /var/lib/mysql /var/lib/mysql.oloc
ln -s /mnt/mysql /var/lib
chown -ch mysql:mysql /var/lib/mysql
Un fois que le point est monté, je copie de l’actuel espace de stockage vers le montage. Puis, l’idée est de créer un lien en lieu et place du répertoire par défaut. Pour cela, je renomme pour une solution de retour arrière le mysql en mysql.oloc, puis je crée le lien symbolique et change le propriétaire.
Il ne reste plus qu’à relancer avec l’alias défini au début.
ms start
ms status
Merci beaucoup pour l’astuce, ma carte SD te remercie.
je verrai un peu les performances, je l’ai copié sur mon Nas de freebox.
Par contre juste petite précision pour d’autres pour un montage sur le nas de la freebox, j’ai en fait fait un
cat /etc/passwd
pour récupérer les uid gid de mysql
//mafreebox.free.fr/disque40dur/MySqlRaspberry /mnt/mysql/ cifs _netdev,rw,users,iocharset=utf8,uid=xXxX,gid=XxXx,user$
et je l’ai utilisés pour le fichier fstab à la place des x