WordPress数据库导入:行太大

时间:2014-09-24 作者:Chris

我已经使用Windows的命令提示符转储了Wordpress数据库:

mysqldump -u username -p databasename > filename.sql
然后,在另一台服务器上,使用以下方法导入它:

mysql -u username -p databasename < filename.sql
导入wordpress\\u选项表中的“值”列时出现此错误:

#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. 
奇怪的是,无论是原始数据库还是新数据库,都在使用“longtext”来制作这个专栏,我相信它可以存储4GB的数据。我的选项值列只有1.9MB!

我想知道这是否是mysql中的设置?我已将最大数据包大小设置为16MB,将密钥缓冲区大小设置为32MB

EDIT下面是创建WordPress选项表的SQL

--
-- 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 */;
我还尝试使用phpMyAdmin进行导入,而不是使用命令行,但结果是一样的。

1 个回复
SO网友:Chris

如果innodb\\u log\\u file\\u大小在my中,则问题会出现在MySQL 5.6.20或更高版本中。ini设置过低。我把我的换成了16M,问题就解决了。感谢@Otto提供的解决方案。

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

结束

相关推荐

Add "Category" to Mysql Query

我需要你的帮助:)我在WordPress上进行了以下自定义Mysql查询: $querystr = \" SELECT DISTINCT meta_value FROM $wpdb->postmeta WHERE post_id IN( SELECT DISTINCT wpostmeta.post_id FROM $wpdb->posts wposts, $wpdb->postmeta wpostmeta WHE