RAM drive pour une base de données MySQL
Ceci sert pour des tests intensifs et obtenir un temps d'exécution acceptable et de ne pas nuire au reste du serveur (IO disque insuffisant)
Création du répertoire en RAM :
mkdir /run/shm/db_ram
chmod 777 /run/shm/db_ram
Création de la base de données :
CREATE DATABASE db_ram
CHARACTER SET utf8
COLLATE utf8_general_ci;
Ajout d'un utilisateur et attributions des permissions :
CREATE USER 'ram_user'@'%' IDENTIFIED BY 'mot-de-passe';
GRANT ALL PRIVILEGES ON db_ram.* TO 'ram_user'@'localhost' IDENTIFIED BY 'mot-de-passe';
Copie de la BD et faire le point de montage :
cp /var/lib/mysql/db_ram/db.opt /run/shm/db_ram/
mount --bind /var/lib/mysql/db_ram /run/shm/db_ram
Redémarrage du service :
service mysql restart
À noter que ce qui vient d'être fait n'est pas persistant au redémarrage.
Alors, ajouter dans le fichier "/etc/rc.local" :
mkdir /run/shm/db_ram
chmod 777 /run/shm/db_ram
mount --bind /var/lib/mysql/db_ram /run/shm/db_ram