web-dev-qa-db-fra.com

Importation de base de données Wordpress: taille de ligne trop grande

J'ai effectué une sauvegarde de ma base de données Wordpress à l'aide de l'invite de commande de Windows:

mysqldump -u username -p databasename > filename.sql

Ensuite, sur un serveur différent, importez-le en utilisant:

mysql -u username -p databasename < filename.sql

Je reçois cette erreur lors de l'importation de la colonne de valeurs dans la table wordpress_options:

#1118 - Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline. 

Ce qui est étrange, c'est que les bases de données originales et nouvelles utilisent "longtext" pour cette colonne, qui, je crois, peut stocker 4 Go de données. Ma colonne de valeur des options est seulement 1,9 Mo!

Je me demande si c'est un paramètre dans mysql? J'ai défini la taille de paquet maximale à 16 Mo et la taille de la mémoire tampon de clé à 32 Mo

EDIT Voici le SQL qui crée la table d'options WordPress

--
-- Table structure for table `wordpress_options`
--

DROP TABLE IF EXISTS `wordpress_options`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `wordpress_options` (
  `option_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
  `option_name` varchar(64) NOT NULL DEFAULT '',
  `option_value` longtext NOT NULL,
  `autoload` varchar(20) NOT NULL DEFAULT 'yes',
  PRIMARY KEY (`option_id`),
  UNIQUE KEY `option_name` (`option_name`)
) ENGINE=InnoDB AUTO_INCREMENT=4872 DEFAULT CHARSET=utf8;
/*!40101 SET character_set_client = @saved_cs_client */;

J'ai également essayé d'utiliser phpMyAdmin pour l'importation, au lieu de la ligne de commande, mais le résultat est le même.

1
Chris

Le problème se produit dans MySQL 5.6.20 ou version ultérieure, si innodb_log_file_size dans my.ini est défini sur une valeur trop basse. J'ai changé le mien à 16M et le problème est parti. Merci à @Otto pour la solution.

http://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-20.html

1
Chris