mysqldump-导出结构,不需要自动增量

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (18)

我有一个MySQL数据库,我试图找到一种只导出其结构的方法,而不需要自动增量值。mysqldump --no-data几乎可以完成这项工作,但它保持了汽车_增量值。有没有任何方法可以不使用PHPMyAdmin(我知道它可以做到)来完成它?

提问于
用户回答回答于

你可以这样做:

mysqldump -u root -p -h <db-host> --opt <db-name> -d --single-transaction | sed 's/ AUTO_INCREMENT=[0-9]*\b//' > <filename>.sql

就像别人提到的,如果你想sed若要正常工作,请添加g(为g)参数,如下所示:

mysqldump -u root -p -h <db-host> --opt <db-name> -d --single-transaction | sed 's/ AUTO_INCREMENT=[0-9]*\b//g' > <filename>.sql

(只有在安装了GUI工具时,此操作才有效:mysqldump --skip-auto-increment)

用户回答回答于

JoDev的回答对我来说非常有效,只需对sed正则表达式做一个小小的调整:

mysqldump -d -h localhost -u<user> -p<password> <databaseName> | sed 's/ AUTO_INCREMENT=[0-9]*//g' > databaseStructure.sql

扫码关注云+社区