OVH Community, votre nouvel espace communautaire.

Import° tables InnoBD Magento


ek0892
25/11/2011, 12h57
J'ai faire des tutoriels ici :

http://erickranich.wordpress.com/201...ql-de-magento/


http://erickranich.wordpress.com/201...es-ou-dossier/


http://erickranich.wordpress.com/201...de-de-magento/

Mais sur hébergement Mutualisé tu ne peux pas taper de ligne de commande Mysql, donc tu doit passer des heures à découper ta base Mysql, pour l'importer morceau par morceau.

Je te conseille de demander au Support OVH de le faire (je crois qu'ils prennent 20€)

Il vont taper une ligne de commande Mysql , 5 minutes après ta base sera importé

RobertG
09/10/2011, 10h17
Mais ça résous pas le problème de l'importation de mon backup sql de mes tables Innobd de Magento
La base est-elle si grosse que tu ne peux même pas importer table par table (ou par groupes de tables) ?

Nowwhat
08/10/2011, 21h38
Citation Envoyé par Leo69
....
Me reste quoi comme solution ? ....
Il manque une chose dans ta liste de 7 choix.
Choix 8.

T'as l'accès SSH vers ton hébergement.
T'as l'accès FTP vers ton hébergement pour y déposer des énormes fichiers.

Je te propose choix 8: http://www.google.fr/search?q=mysql+...w=1920&bih=885

Gaston_Phone
08/10/2011, 21h12
A tout hasard :

Soyons prétentieux dans nos conseils!

Avec l'aimable autorisation de sfk, et de code_grabber une piste :

Comment faire un Backup/Restor de mes bases de données MUTUALISEES ?
-------------------------------------------------------------------------------

Bonjour, j'utilise le format GZIP.

Dans un script PHP je mets :

Sauvegarde GZIP - Toutes les tables :

Code PHP:
   error_reporting(E_ALL); // Activer le rapport d'erreurs PHP

   
$db_charset "latin1"/* mettre utf8 ou latin1 */

   
$db_server         "xxxxxx"// Nom du serveur MySQL.  ex. mysql5-26.perso
   
$db_name           "xxxxxx"// Nom de la base de données.  ex. mabase
   
$db_username       "xxxxxx"// Nom de la base de données.  ex. mabase
   
$db_password       "xxxxxx"// Mot de passe de la base de données.

   
$cmd_mysql "mysqldump";

   
$archive_GZIP      "sauve_base_format_gzip.gz";

   echo 
" Sauvegarde de la base $db_name par mysqldump dans le fichier 
$archive_GZIP 
 \n";
   
$commande $cmd_mysql." --host=$db_server --user=$db_username --password=$db_password -C -Q -e --default-character-set=$db_charset  $db_name    | gzip -c > $archive_GZIP ";
   
$CR_exec system($commande);
?>
Sauvegarde GZIP - quelques tables :

Code PHP:
   error_reporting(E_ALL); // Activer le rapport d'erreurs PHP

   
$db_charset "latin1"/* mettre utf8 ou latin1 */

   
$db_server         "xxxxxx"// Nom du serveur MySQL.  ex. mysql5-26.perso
   
$db_name           "xxxxxx"// Nom de la base de données.  ex. mabase
   
$db_username       "xxxxxx"// Nom de la base de données.  ex. mabase
   
$db_password       "xxxxxx"// Mot de passe de la base de données.

   
$cmd_mysql "mysqldump";

   
$archive_GZIP      "sauve_base_format_gzip.gz";

   
$Liste_tables_a_sauvegarder " Table1 Table2 Table3 Table4 Table5 ... ";

   echo 
" Sauvegarde de la base $db_name par mysqldump dans le fichier 
$archive_GZIP 
 \n";
   
$commande $cmd_mysql." --host=$db_server --user=$db_username --password=$db_password -C -Q -e --default-character-set=$db_charset  $db_name  $Liste_tables_a_sauvegarder  | gzip -c > $archive_GZIP ";
   
$CR_exec system($commande);
?>

Sauvegarde GZIP - sauve tables avec liste tables à exclure :

Code PHP:
   error_reporting(E_ALL); // Activer le rapport d'erreurs PHP

   
$db_charset "latin1"/* mettre utf8 ou latin1 */

   
$db_server         "xxxxxx"// Nom du serveur MySQL.  ex. mysql5-26.perso
   
$db_name           "xxxxxx"// Nom de la base de données.  ex. mabase
   
$db_username       "xxxxxx"// Nom de la base de données.  ex. mabase
   
$db_password       "xxxxxx"// Mot de passe de la base de données.

   
$cmd_mysql "mysqldump";

   
$archive_GZIP      "sauve_base_format_gzip.gz";

   
$Prefixe_tables_a_exclure " --ignore-table=".$db_name.".jomla1_";

   echo 
" Sauvegarde de la base $db_name par mysqldump dans le fichier 
$archive_GZIP 
 \n";
   
$commande $cmd_mysql." --host=$db_server --user=$db_username --password=$db_password -C -Q -e --default-character-set=$db_charset  $db_name  $Prefixe_tables_a_exclure  | gzip -c > $archive_GZIP ";
   
$CR_exec system($commande);
?>

Restauration GZIP
Code PHP:
   error_reporting(E_ALL); // Activer le rapport d'erreurs PHP

   
$db_charset "latin1"/* mettre utf8 ou latin1 */

   
$db_server         "xxxxxx"// Nom du serveur MySQL.  ex. mysql5-26.perso
   
$db_name           "xxxxxx"// Nom de la base de données.  ex. mabase
   
$db_username       "xxxxxx"// Nom de la base de données.  ex. mabase
   
$db_password       "xxxxxx"// Mot de passe de la base de données.

   
$cmd_mysql "mysql";

   
$archive_GZIP      "sauve_base_format_gzip.gz";

   if (!
is_file($archive_GZIP))   echo "Le fichier ".$archive_GZIP." n'existe pas  
 \n"
;

   echo 
" Restauration de la base $db_name par mysql depuis le fichier $archive_GZIP 
 \n";
   
$commande "gzip -d < $archive_GZIP | $cmd_mysql --host=$db_server  --user=$db_username --password=$db_password $db_name";
   
$CR_exec system($commande); 
?>
Restauration SQL
Code PHP:
   error_reporting(E_ALL); // Activer le rapport d'erreurs PHP

   
$db_charset "latin1"/* mettre utf8 ou latin1 */

   
$db_server         "xxxxxx"// Nom du serveur MySQL.  ex. mysql5-26.perso
   
$db_name           "xxxxxx"// Nom de la base de données.  ex. mabase
   
$db_username       "xxxxxx"// Nom de la base de données.  ex. mabase
   
$db_password       "xxxxxx"// Mot de passe de la base de données.

   
$cmd_mysql "mysql";

   
$archive_SQL      "Sauve_Base.SQL";

   if (!
is_file($archive_SQL))   echo "Le fichier ".$archive_SQL." n'existe pas  
 \n"
;

   echo 
" Restauration de la base $db_name par mysql depuis le fichier $archive_SQL 
 \n";
   
$commande "$cmd_mysql --host=$db_server  --user=$db_username --password=$db_password $db_name  < $archive_SQL";
   
$CR_exec system($commande); 
?>

Analyse :
Pour la partie sauvegarde pas de risque.
Pour la partie restauration, s'assurer au préalable que la sauvegarde est correcte :
  • Transfert de la sauvegarde sur ton micro,
  • Dé-zippe le fichier sauvegarde,
  • Ouvre avec NOTEPAD.EXE le fichier extrait.


Le fichier extrait doit avoir une taille conséquente et commencer par quelque chose qui ressemble à :

-- MySQL dump 10.13 Distrib 5.1.35, for Win32 (ia32)
--
-- Host: localhost Database: YYY
-- ------------------------------------------------------
-- Server version 5.1.35-community

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;

--
-- Table structure for table `tbl_adresses`
--

DROP TABLE IF EXISTS `Table_xxx`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Table_xxx` (
`Id` int(11) NOT NULL AUTO_INCREMENT,
...
`DER` varchar(3) NOT NULL DEFAULT '',
PRIMARY KEY (`Id`),
KEY `Id` (`Id`)
) ENGINE=MyISAM AUTO_INCREMENT=2561 DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `Table_xxx`
--

LOCK TABLES `Table_xxx` WRITE;

Leo69
08/10/2011, 21h04
merci pour la réponse, en effet il faut cocher "éviter vérif clef étrangèe" pour l'exportation.

Mais ça résous pas le problème de l'importation de mon backup sql de mes tables Innobd de Magento

1. phpmyadmin ? pas possible, limite de taille du fichier à importer 16Mo max
2. sql ? pas possible, limite de taille du fichier à importer 16Mo max
3. script à créer soi même et à envoyer sur le serveur pour exécution et à taper après url du domaine ? pas possible, limite de temps d’exécution du scirpt ( 2 minutes max)
4. sauvegarde automatique faite par OVH ? il fait effectivement une sauvegarde automatique périodique, mais du site mais pas des tables Innobd de ma base de données.
5. Une sauvegarde manuelle dump manuelle via le e-manager que je importe ensuite ? il prend pas les tables Innobd dans la sauvegarde
6. Script créé par un pro (Bigdump 0.4b) ? pas possible, importation partielle et limite de durée d’exécution du script aussi....
7. Importer en local mon fichier sql et l'exporter ensuite mais compressé ? ça fonctionne pas

Me reste quoi comme solution ? ....

RobertG
06/10/2011, 16h17
Pour les tables InnoDb, il faut exporter en désactivant la vérification des clés étrangères pour que l'import se fasse correctement ensuite, ce qui permet d'importer des données comportant des liens vers d'autres données pas encore présentes dans la base.

Leo69
06/10/2011, 10h06
Après une malheureuse tentative de mise à jour de mon logiciel ecommerce (Magento) sur mon pro90, mais heureusement j'avais fais un backup de ma base de données format sql via le logiciel putty (pas eu le choix de la méthode) j'ai un problème pour restaurer, importer ma base de données sql.
Cette base de données comporte des tables InnoBD.
Ovh propose plusieurs méthodes d'exportation et importation de tables d'une bdd, dont une ou deux automatiques. Et bien, rien fonctionne pour moi, ma bdd fait 18M°
Ce sont des tables de l'installation de Magento et tout les produits que je vends +/- 4500.
Ovh me dit que sa sauvegarde automatique et planifié (dump journalier,hebdo etc ) ne prend pas les tables Innobd !
Impossible d'importer ma base de données.
OVH cherche une solution depuis plus de 10 jours
Je serai parait il limité par le temps d éxécuter du script (soit maximum 2 minutes), quel que soit le script (même Bigdump 034b)

Quelqu un en pareille situation ?
Merci