mysqldump不';不能使用全文索引吗?

mysqldump不';不能使用全文索引吗?,mysql,mysql-workbench,amazon-rds,Mysql,Mysql Workbench,Amazon Rds,我经常使用以下命令通过ssh在AWS RDS上导出mySql db: mysqldump -u myUserName -h myDBname.randomcharacters.us-region.rds.amazonaws.com -p myDBname > myDBname.sql 它创建了10GB的sql文件,然后我将其压缩并下载到我的开发系统中 最近,我通过在mySQLWorkbench中运行以下代码向该数据库添加了全文索引: ALTER TABLE myTable ADD FUL

我经常使用以下命令通过ssh在AWS RDS上导出mySql db:

mysqldump -u myUserName -h myDBname.randomcharacters.us-region.rds.amazonaws.com -p myDBname > myDBname.sql
它创建了10GB的sql文件,然后我将其压缩并下载到我的开发系统中

最近,我通过在mySQLWorkbench中运行以下代码向该数据库添加了全文索引:

ALTER TABLE myTable ADD FULLTEXT(field1, field2);
自从添加全文索引以来,数据库继续运行良好。在访问它时,一切正常。但是当我通过
mysqldump
导出它时,它会在导出大约2GB的数据后退出,当我试图在本地开发系统上导入它时,生成的文件会导致我的sql客户端崩溃


什么能解释这一点呢?

这是一个数据包大小问题。添加
--允许的最大\u数据包=64M
修复了它:

mysqldump -u myUserName -h myDBname.randomcharacters.us-region.rds.amazonaws.com -p --max_allowed_packet=64M myDBname > myDBname.sql
mysqldump既不读取全文索引的内容,也不导出全文索引的内容——加载转储文件的服务器负责在加载数据时从头开始构建全文索引。添加此索引唯一能做的就是更改转储文件中的表定义,这不会导致您描述的问题。您说mysqldump“在导出大约2GB的数据后退出”但是mysqldump并不仅仅是退出——如果没有捕获到所有内容,那么这必然伴随着来自mysqldump的错误消息。那个错误消息是什么?在创建转储文件时指定
--verbose
可能很有用,如果您没有意识到这一点,您还需要知道mysqldump文件是人类可读的,因此像
head
tail
less
这样的实用程序对于检查它们以获取提示非常有用。请让我们知道你看到了什么。