mysqldump 未转储我的数据

mysqldump 未转储我的数据

我在 Ubuntu Linux(10.0.4 LTS)上运行 mysqldump

我的mySQL版本信息是:

mysql Ver 14.14 Distrib 5.1.41,适用于 debian-linux-gnu (i486),使用 readline 6.1

我使用了以下命令:

mysql -u 用户名 -p 数据库名称 > 数据库名称_backup.sql

然而,当我打开生成的.sql文件时,我发现大多数表只转储了模式,而在少数实际数据被转储的情况下,只转储了1或2条记录(每个表至少有几十条记录)。

有人知道可能发生什么事吗?

答案1

我认为您会看到很多插入,但实际上可能只看到 1 或 2 个。这很正常,如果您仔细观察,您会看到 1 或 2 个 BIG 插入(扩展插入)。扩展插入是包含多个 VALUES 列表的多行插入。

答案2

尝试传递完整命令:

mysqldump --databases --result-file=filename.sql mydatabase -u mysqluser -p

答案3

我也遇到了数据没有被转储的问题,但原因不同。如果有人犯了同样的错误,我会在这里发布答案。我做到了:

mysqldump -u user -p -d database_name

认为-d database_name指定了数据库名称。但是 database_name 被视为最后一个参数(而不是选项),而-d似乎是 的(未记录的)独立缩写--no-data。删除后,-d我在转储中获得了数据。

相关内容