mysqldump提取数据而不包含表结构。

5 浏览
0 Comments

mysqldump提取数据而不包含表结构。

我想将一个数据库的所有mysql数据倾倒到一个单独的文件中。但是我不想在这个文件中包含表结构(有另一个文件会包含表的结构)。

有没有可能严格提取数据而不是表结构?

我现在在做的是...

# 提取数据库结构
mysqldump -d -hlocalhost -uusername -ppassword database -r database.sql
# 分别提取每个表及其数据
mysqldump -d -hlocalhost -uusername -ppassword database --tab .

第一个命令会生成一个包含数据库中所有实体结构的.sql文件,而第二个命令会自动生成结构和实体分开的.sql和.txt文件。

我需要的是一份以相同方式完成的整个数据库的副本。

谢谢

0
0 Comments

问题:mysqldump提取数据时没有表结构的原因和解决方法

原因:mysqldump在提取数据时默认会包括表结构,如果只想提取数据而不包括表结构,需要使用--no-create-info或-t选项。

解决方法:使用--no-create-info或-t选项来提取数据。这样做将不会生成重新创建每个表的CREATE TABLE语句。需要注意的是,这个选项不会排除创建日志文件组或表空间的语句,但可以使用--no-tablespaces选项来实现此目的。

示例代码:

mysqldump --no-create-info -u username -p database > dump.sql

这样的操作将只提取数据库中的数据,而不包括表结构和触发器等信息。

0