单个 table returns errno 32 的 Mysqldump

Mysqldump of single table returns errno 32

我需要从一台服务器到另一台服务器执行单个 table 的 mysqldump。

如果我转储整个数据库一切顺利:

 mysqldump {database_name} | mysql -h {host_name} -u {user_name} -p{password} {database_name}

但是如果我尝试像这样转储单个 table:

mysqldump {database_name} {table} | mysql -h {host_name} -u {user_name} -p{password} {database_name} {table}

我得到:"mysqldump: Got errno 32 on write".

有人知道是什么原因造成的吗?

谢谢

错误 32 是 "broken pipe"。这意味着读取过程在读取写入管道的所有内容之前退出。

问题是您为 mysql 命令提供了不正确的参数。它的末尾不应有 table 名称。它只执行通过管道传输给它的转储文件中的命令。当您将 table 名称放入 mysqldump 命令时,转储文件将只包含那个 table.