{{tag>tutoriel}}
====== Changer l’emplacement des bases de données mysql ======
Dans l'exemple, nous choisissons comme nouvel emplacement **/srv/data/mysql**
===== Pré-requis =====
* une machine sous debian avec accès root
* un serveur mysql
===== Première étape : connaître l'emplacement actuel du dossier mysql =====
- **Affichez le fichier /etc/mysql/mariadb.conf.d/50-server.cnf** :USER@MACHINE:~$ cat /etc/mysql/mariadb.conf.d/50-server.cnf
(...)
# * Basic Settings
#
user = mysql
pid-file = /run/mysqld/mysqld.pid
socket = /run/mysqld/mysqld.sock
#port = 3306
basedir = /usr
datadir = /var/lib/mysql
(...)
- **cherchez la ligne définissant datadir** (par défaut /var/lib/mysql) : c'est l'emplacement cherché.
===== Autres étapes =====
- **Créez le nouveau dossier** :USER@MACHINE:~$ sudo mkdir /srv/data/mysql
- **Rendez mysql propriétaire** du nouveau dossier : USER@MACHINE:~$ sudo chown mysql:mysql /srv/data/mysql
- **Allez dans votre datadir** actuel :USER@MACHINE:~$ cd /var/lib/mysql
- **Stoppez le service mysql** pour éviter une copie non correcte :USER@MACHINE:~$ sudo systemctl stop mysql
- **copiez les bases** dans le nouveau dossier :USER@MACHINE:~$ sudo cp * /srv/data/mysqlCela peut prendre du temps selon la taille du dossier
- **Éditez avec les droits d'administration le fichier /etc/mysql/mariadb.conf.d/50-server.cnf** :USER@MACHINE:~$ sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf et modifiez la directive datadir par votre nouveau dossier (ici /srv/data/mysql)
- **Redémarrez mysql** :USER@MACHINE:~$ sudo systemctl start mysql
- **Ouvrez mysql** :USER@MACHINE:~$ sudo mysql -u root -p
Enter password:
(...)
MariaDB [(none)]> create database newdir_test;
(...)
MariaDB [(none)]> exit
Bye
- **Lancez** :USER@MACHINE:~$ ls /srv/data/mysql | grep newdir_test
newdir_testSi newdir_test s’affiche, c’est que tout marche bien
- **Effacez la base de test** :USER@MACHINE:~$ sudo mysql -u root -p
Enter password:
(...)
MariaDB [(none)]> drop database newdir_test;
(...)
MariaDB [(none)]> exit
Bye
- **vous pouvez supprimer l’ancien datadir** :USER@MACHINE:~$ sudo rm -rf /var/lib/mysql
===== Conclusion =====
Vous venez de déplacer vos bases de données mysql.
===== Problèmes connus =====
===== Voir aussi =====
* **(fr)** [[https://lelibreauquotidien.fr/2020/03/28/changer-lemplacement-des-bases-de-donnees-mysql-sur-debian/|Changer l’emplacement des bases de données mysql sur debian]]
----
//Basé sur << [[https://lelibreauquotidien.fr/2020/03/28/changer-lemplacement-des-bases-de-donnees-mysql-sur-debian/|Changer l’emplacement des bases de données mysql sur debian]] >> par Le Libre Au Quotidien.//