{"id":7192,"date":"2024-10-02T05:21:04","date_gmt":"2024-10-02T05:21:04","guid":{"rendered":"https:\/\/hengowebsite.luong.fr\/?page_id=7192"},"modified":"2024-10-02T05:24:43","modified_gmt":"2024-10-02T05:24:43","slug":"pour-migrer-une-base-de-donnees-mysql-existante-vers-un-conteneur-docker-2","status":"publish","type":"page","link":"https:\/\/hengowebsite.luong.fr\/?page_id=7192","title":{"rendered":"Pour migrer une base de donn\u00e9es MySQL existante vers un conteneur Docker"},"content":{"rendered":"<h2>Pour migrer une base de donn\u00e9es MySQL existante vers un conteneur Docker<\/h2>\n<p>&nbsp;<\/p>\n<h3>### Pr\u00e9requis<\/h3>\n<p>&#8211; *Docker* et *Docker Compose* install\u00e9s sur votre machine.<br \/>\n&#8211; Acc\u00e8s \u00e0 la base de donn\u00e9es MySQL source (local ou distant).<\/p>\n<h3>### \u00c9tapes de la migration<\/h3>\n<h4>1. *Exporter la base de donn\u00e9es existante :*<\/h4>\n<p>Utilisez la commande mysqldump pour exporter votre base de donn\u00e9es vers un fichier SQL. Remplacez les valeurs en italique par celles qui correspondent \u00e0 votre configuration.<br \/>\nbash<br \/>\nmysqldump -u utilisateur -p nom_de_la_base &gt; base_de_donnees.sql<\/p>\n<p>Vous serez invit\u00e9 \u00e0 entrer le mot de passe pour l&rsquo;utilisateur MySQL. Le fichier base_de_donnees.sql contiendra tous les sch\u00e9mas et donn\u00e9es de votre base.<\/p>\n<h4>2. *Configurer Docker avec MySQL :*<\/h4>\n<p>Comme d\u00e9crit pr\u00e9c\u00e9demment, cr\u00e9ez un fichier docker-compose.yml pour ex\u00e9cuter MySQL.<br \/>\nExemple de docker-compose.yml :<br \/>\nyaml<br \/>\nversion: &lsquo;3.8&rsquo;<br \/>\nservices:<br \/>\ndb:<br \/>\nimage: mysql:latest<br \/>\nrestart: always<br \/>\nenvironment:<br \/>\nMYSQL_ROOT_PASSWORD: rootpassword # Remplacez par votre mot de passe<br \/>\nMYSQL_DATABASE: nom_de_la_base # Nom de votre base<br \/>\nMYSQL_USER: utilisateur # Nom d&rsquo;utilisateur<br \/>\nMYSQL_PASSWORD: motdepasse # Mot de passe de l&rsquo;utilisateur<br \/>\nports:<br \/>\n&#8211; \u00ab\u00a03306:3306\u00a0\u00bb<br \/>\nvolumes:<br \/>\n&#8211; db_data:\/var\/lib\/mysql<br \/>\nvolumes:<br \/>\ndb_data:<\/p>\n<h4>3. *D\u00e9marrer le conteneur MySQL :*<\/h4>\n<p>&nbsp;<\/p>\n<p>Dans le m\u00eame r\u00e9pertoire que votre docker-compose.yml, ex\u00e9cutez :<br \/>\nbash<br \/>\ndocker-compose up -d<\/p>\n<p>4. *Copier le fichier SQL dans le conteneur :*<\/p>\n<p>Une fois le conteneur en cours d\u2019ex\u00e9cution, vous devez copier le fichier SQL \u00e0 l&rsquo;int\u00e9rieur du conteneur MySQL. Utilisez la commande suivante :<br \/>\nbash<br \/>\ndocker cp base_de_donnees.sql &lt;nom_du_conteneur&gt;:\/base_de_donnees.sql<\/p>\n<p>Remplacez &lt;nom_du_conteneur&gt; par l&rsquo;ID ou le nom de votre conteneur MySQL (vous pouvez le trouver avec docker ps).<\/p>\n<h4>5. *Importer la base de donn\u00e9es dans le conteneur :*<\/h4>\n<p>Connectez-vous au conteneur MySQL :<br \/>\nbash<br \/>\ndocker exec -it &lt;nom_du_conteneur&gt; mysql -u utilisateur -p<\/p>\n<p>\u00c0 l&rsquo;int\u00e9rieur de l&rsquo;interface MySQL, ex\u00e9cutez la commande suivante pour importer le fichier :<br \/>\nsql<br \/>\nSOURCE \/base_de_donnees.sql;<\/p>\n<p>6. *V\u00e9rifier l&rsquo;importation :*<\/p>\n<p>Vous pouvez v\u00e9rifier que votre base de donn\u00e9es a \u00e9t\u00e9 correctement import\u00e9e en ex\u00e9cutant :<br \/>\nsql<br \/>\nSHOW DATABASES;<\/p>\n<p>V\u00e9rifiez \u00e9galement le contenu de la base import\u00e9e.<\/p>\n<h4>7. *Arr\u00eater et nettoyer les ressources :*<\/h4>\n<p>Une fois que vous avez confirm\u00e9 que la migration s&rsquo;est bien d\u00e9roul\u00e9e, vous pouvez arr\u00eater le conteneur si n\u00e9cessaire :<br \/>\nbash<br \/>\ndocker-compose down<\/p>\n<p>### Conclusion<\/p>\n<p>Vous avez migr\u00e9 avec succ\u00e8s votre base de donn\u00e9es MySQL existante vers un conteneur Docker. Cette m\u00e9thode devrait fonctionner pour la plupart des cas, mais assurez-vous de tester soigneusement les fonctionnalit\u00e9s de votre application apr\u00e8s&nbsp;la&nbsp;migration.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Pour migrer une base de donn\u00e9es MySQL existante vers un conteneur Docker &nbsp; ### Pr\u00e9requis &#8211; *Docker* et *Docker Compose* install\u00e9s sur votre machine. &#8211; Acc\u00e8s \u00e0 la base de donn\u00e9es MySQL source (local ou distant). ### \u00c9tapes de la migration 1. *Exporter la base de donn\u00e9es existante :* Utilisez la commande mysqldump pour exporter [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"ngg_post_thumbnail":0},"_links":{"self":[{"href":"https:\/\/hengowebsite.luong.fr\/index.php?rest_route=\/wp\/v2\/pages\/7192"}],"collection":[{"href":"https:\/\/hengowebsite.luong.fr\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/hengowebsite.luong.fr\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/hengowebsite.luong.fr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/hengowebsite.luong.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=7192"}],"version-history":[{"count":3,"href":"https:\/\/hengowebsite.luong.fr\/index.php?rest_route=\/wp\/v2\/pages\/7192\/revisions"}],"predecessor-version":[{"id":7195,"href":"https:\/\/hengowebsite.luong.fr\/index.php?rest_route=\/wp\/v2\/pages\/7192\/revisions\/7195"}],"wp:attachment":[{"href":"https:\/\/hengowebsite.luong.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=7192"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}