1 000 FAQ, 500 tutoriels et vidéos explicatives. Ici, il n'y a que des solutions !
Importer une grosse base de données (hébergement ancienne formule)
La manière la plus courante d'importer une base de données MySQL sur les serveurs est de passer par phpMyAdmin en suivant ce guide. La méthode d'importation suivante est un peu plus complexe, elle ne concerne en principe que les bases trop lourdes pour être importées directement via phpMyAdmin.
Actions Ă effectuer
ETAPE 1
Connectez-vous Ă votre console d'administration
Cliquez sur Outils -> Bases de données
Ajoutez une base de données (ou supprimez/recréez l'existante si c'est pour la restaurer)
Sous Liste des utilisateurs existants, créez un compte MySQL ayant tous les droits sur la base
ETAPE 2
Nommez les fichiers de dump du nom de la base mysql cible.sql (exemple: domainexyz.sql)
Connectez-vous en FTP avec le compte admin sys_xxx
Placez les fichiers dans le répertoire /data
ETAPE 3
Placez un fichier intitulé .my.cnf dans le répertoire /data (notez le point avant my)
Le fichier doit ĂŞtre de type ASCII (encodding ASCII) et pas UTF-8 ou autre
Ce fichier doit contenir 5 lignes:
- l'indication
# .my.cnf
(tel quel - ne pas modifier) - l'indication
[client]
(tel quel - ne pas modifier) - l'adresse du serveur MySQL (console d'administration -> Outils -> Bases de données)
- le nom d'utilisateur MySQL
- le mot de passe de l'utilisateur MySQL
avec des retours de ligne Ă la fin de chaque ligne. Exemple:
# .my.cnf[client]host=mysql.domaine.xyzuser=totopassword=1234
Modifiez le CHMOD de .my.cnf en 0600, c'est-à -dire lecture/écriture pour le propriétaire uniquement.
ETAPE 4
Attendez quelques minutes, le temps que le robot passe pour vérifier la présence de dumps MySQL dans le répertoire data et les importe dans la base désirée.
Après traitement, le fichier "nom de la base MySQL"-"YYYYMMDDHHMMSS".log contiendra le résultat des requêtes ainsi que les éventuelles erreurs d'importation. S'il est vide c'est que tout est en ordre, et le fichier dump nom_de_la_base_mysql_cible.sql aura été renommé en nom_de_la_base_mysql_cible.old.
En images
Importation MySQL automatisée
En savoir plus
Le dump doit être décompressé. Il est important de ne pas renommer le fichier compressé mais bien son contenu.
Les dumps ne doivent pas contenir CREATE DATABASE ou CONNECT ou USE sinon le dump ne sera pas importé correctement.
La commande "source" n'est pas utilisable sur les serveurs car le serveur sur lequel vos bases de données sont hébergées n'est pas accessible au niveau du système de fichiers.
Infomaniak ne procède pas à une suppression complète des tables existantes de la base de données actives avant d'importer le dump déposé dans le répertoire /data. C'est dans votre dump SQL que doivent se trouver les directives de suppression de table s'il faut les supprimer au préalable. Cependant vous pouvez aussi sur votre interface d'administration Infomaniak simplement supprimer et recréer la base pour la vider.
Si le robot passe alors que le fichier .sql est encore en plein upload, il est possible que ce robot traite ce fichier encore incomplet. Pour éviter cela vous pouvez télécharger votre fichier avec une extension autre que .sql afin qu'il ne soit pas pris en compte directement par le robot, puis renommer ce fichier une fois l'upload terminé.
Si une des lignes du dump contient une erreur, il continuera à importer la suite. Les erreurs se trouveront après traitement dans le fichier "nom de la base MySQL"-"YYYYMMDDHHMMSS".log
Vous pouvez également utiliser le script bigdump.php qui découpe le fichier dump et fait l'importation.