{"id":1490,"date":"2017-02-02T13:26:43","date_gmt":"2017-02-02T11:26:43","guid":{"rendered":"http:\/\/www.h-hennes.fr\/blog\/?p=1490"},"modified":"2017-02-02T13:29:06","modified_gmt":"2017-02-02T11:29:06","slug":"optimisation-des-exports-de-bases-de-donnees-pour-mise-a-jour-denvironnement-de-developpement","status":"publish","type":"post","link":"https:\/\/www.h-hennes.fr\/blog\/2017\/02\/02\/optimisation-des-exports-de-bases-de-donnees-pour-mise-a-jour-denvironnement-de-developpement\/","title":{"rendered":"Optimisation des exports de bases de donn\u00e9es pour mise \u00e0 jour d&rsquo;environnement de d\u00e9veloppement"},"content":{"rendered":"<p>En tant que d\u00e9veloppeur il est souvent n\u00e9cessaire de faire des dumps de base de donn\u00e9es pour mettre \u00e0 jour les environnements de d\u00e9veloppements ( qu&rsquo;ils soient locaux ou sur le serveur ).<br \/>\nCependant les tables de productions sont souvent tr\u00e8s lourdes et comportent des donn\u00e9es qui ne sont pas forc\u00e9ment n\u00e9cessaire pour d\u00e9velopper.<\/p>\n<p>Voici un petit script qui va vous faire gagner du temps dans l&rsquo;export \/ import de ces bases de donn\u00e9es.<br \/>\nLa logique est relativement simple .<\/p>\n<p>Pour les tables dont les donn\u00e9es ne sont pas importantes, on va exporter uniquement la structure.<br \/>\nPuis nous excluons ces tables de l&rsquo;export global.<\/p>\n<pre lang=\"bash\">\r\n #!\/bin\/bash\r\n\r\n#Variables de la base de donn\u00e9es\r\nhost=\"localhost\"\r\nuser=\"root\"\r\npass=\"root\"\r\ndbname=\"dbname\"\r\n\r\n#Stockage de ces tables \u00e0 ignorer dans une variables ( separer les noms par un espace)\r\nignoreTables=\"table1 table2 \"\r\n\r\n#Dump de la structure de ces tables\r\necho \"Export de la structure des tables ignor\u00e9es\"\r\nmysqldump -d -h $host -u $user -p$pass $dbname $ignoreTables > backup-structure.sql\r\n\r\n#Construction de la chaine d'exclusion\r\nignoreTablesString=\"\"\r\nfor table in $ignoreTables\r\ndo\r\nignoreTablesString=\"$ignoreTablesString --ignore-table $dbname.$table \"\r\ndone\r\n\r\n#dump gzip\u00e9 de la base sans ces tables\r\necho \"Export des donn\u00e9es de la bdd ( sans les tables \u00e0 ignorer )\"\r\nmysqldump -h $host -u $user -p$pass $dbname $ignoreTablesString --single-transaction | gzip > backup-data.sql.gz\r\n<\/pre>\n<p>Il vous suffit ensuite d&rsquo;importer les 2 fichiers.<br \/>\nSur certaines bases de donn\u00e9es magento ce script fait \u00e9conomiser des gigas de donn\u00e9es \ud83d\ude42<\/p>\n","protected":false},"excerpt":{"rendered":"<p>En tant que d\u00e9veloppeur il est souvent n\u00e9cessaire de faire des dumps de base de donn\u00e9es pour mettre \u00e0 jour les environnements de d\u00e9veloppements ( qu&rsquo;ils soient locaux ou sur le serveur ). Cependant les tables de productions sont souvent tr\u00e8s lourdes et comportent des donn\u00e9es qui ne sont pas forc\u00e9ment n\u00e9cessaire pour d\u00e9velopper. Voici [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[246,245,254,6],"tags":[476,370,477],"class_list":["post-1490","post","type-post","status-publish","format-standard","hentry","category-magento-2","category-prestashop-2","category-serveurs-dedies","category-trucs-et-astuces","tag-dump","tag-mysqldump","tag-sql"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.h-hennes.fr\/blog\/wp-json\/wp\/v2\/posts\/1490","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.h-hennes.fr\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.h-hennes.fr\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.h-hennes.fr\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.h-hennes.fr\/blog\/wp-json\/wp\/v2\/comments?post=1490"}],"version-history":[{"count":3,"href":"https:\/\/www.h-hennes.fr\/blog\/wp-json\/wp\/v2\/posts\/1490\/revisions"}],"predecessor-version":[{"id":1493,"href":"https:\/\/www.h-hennes.fr\/blog\/wp-json\/wp\/v2\/posts\/1490\/revisions\/1493"}],"wp:attachment":[{"href":"https:\/\/www.h-hennes.fr\/blog\/wp-json\/wp\/v2\/media?parent=1490"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.h-hennes.fr\/blog\/wp-json\/wp\/v2\/categories?post=1490"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.h-hennes.fr\/blog\/wp-json\/wp\/v2\/tags?post=1490"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}