Vous regardez une version antérieure (v. /pages/viewpage.action?pageId=113706105) de cette page.

afficher les différences afficher l'historique de la page

« Afficher la version précédente Vous regardez la version actuelle de cette page. (v. 2) afficher la version suivante »

Procédure pour importer ou exporter un dump de base MySQL sur le serveur SQL Belenos


Si besoin d'effectuer des opérations d'import ou d'export via des dump de base MySQL, on peut utiliser deux méthodes :

  • Pour les petites bases (< 1.5G) : interface web Adminer : https://adminer.gadz.org
  • Pour les base volumineuse (de type de celle du site Soce.fr) : en ligne de commande depuis le serveur Belenos (MariaDB) via la cmd mysqldump.

Effectuer un dump

Se connecter en ssh à belenos, puis se rendre dans le répertoire /mysql et lancer ensuite la commande suivante :

  • Pour effectuer le dump de toutes les bases :
cd /mysql
mysqldump -u root -p --all-databases > PATH_FOR_THE_DESTINATION.sql
  • Pour effectuer le dump d'une ou plusieurs base(s) spécifique :
cd /mysql
mysqldump -u root -p --databases DB_NAME_1 DB_NAME_2 > PATH_FOR_THE_DESTINATION.sql
  • Pour effectuer un dump d'une table spécifique seulement :
cd /mysql
mysqldump -u root -p --opt SQL_DB_NAME TABLE_NAME > PATH_FOR_THE_DESTINATION.sql

Importer un dump

Se connecter en ssh à belenos, puis se rendre dans le répertoire /appli/mysql/mysql-gorg-prod-clu/shell et lancer ensuite la commande suivante :

cd /appli/mysql/mysql-gorg-prod-clu/shell
mysql --defaults-file=/appli/mysql/mysql-gorg-prod-clu/config/my.cnf -uroot -p`cat ../config/.mysql-passwd` SQL_DB_NAME < PATH_FOR_THE_DESTINATION.sql

Pour effectuer l'import d'une seule table :

cd /appli/mysql/mysql-gorg-prod-clu/shell
mysql --defaults-file=/appli/mysql/mysql-gorg-prod-clu/config/my.cnf -uroot -p`cat ../config/.mysql-passwd` --opt SQL_DB_NAME TABLE_NAME < PATH_FOR_THE_DESTINATION.sql

Si le dump est compressé

gunzip -c dump.sql.gz | mysql --defaults-file=/appli/mysql/mysql-gorg-prod-clu/config/my.cnf -uroot -p`cat ../config/.mysql-passwd` SQL_DB_NAME

ou

zcat dump.sql.gz | mysql --defaults-file=/appli/mysql/mysql-gorg-prod-clu/config/my.cnf -uroot -p`cat ../config/.mysql-passwd` SQL_DB_NAME

ou

cat dump.sql.gz | gunzip | mysql --defaults-file=/appli/mysql/mysql-gorg-prod-clu/config/my.cnf -uroot -p`cat ../config/.mysql-passwd` SQL_DB_NAME

en utilisant PV (progress viewer)

non compressé : pv dump.sql | mysql --defaults-file=/appli/mysql/mysql-gorg-prod-clu/config/my.cnf -uroot -p`cat ../config/.mysql-passwd` SQL_DB_NAME
compressé : pv dump.sql.gz | gunzip | mysql --defaults-file=/appli/mysql/mysql-prod-mac-clu/config/my.cnf -uroot -p`cat ../config/.mysql-passwd` SQL_DB_NAME

Description des commandes


mysqldump

fichier de configuration de l'instance (path, nom, port...)

login avec user root

emplacement du passwd

argument lock des tables et optimisations

nom de la base SQL

sélecteur export ou import

nom et path du fichier de dump

Link utile

Descriptions des options et arguments possible : https://mariadb.com/kb/en/mariadb/mysqldump/

Pour spécifier une ou plusieurs tables : 

 db_name table1_name table2_name table3_name

Pour ignorer une table : 

--ignore-table=<database>.<table>




Réparation des databases/tables

Se connecter en ssh à belenos, puis se rendre dans le répertoire /appli/mysql/mysql-gorg-prod-clu/shell et lancer ensuite la commande suivante :

cd /appli/mysql/mysql-gorg-prod-clu/shell
mysqlcheck --defaults-file=/appli/mysql/mysql-gorg-prod-clu/config/my.cnf -uroot -p`cat ../config/.mysql-passwd` --auto-repair --check --all-databases

Pour lancer une optimisation des databases :

cd /appli/mysql/mysql-gorg-prod-clu/shell
mysqlcheck --defaults-file=/appli/mysql/mysql-gorg-prod-clu/config/my.cnf -uroot -p`cat ../config/.mysql-passwd` --all-databases -o
  • Aucune étiquette