当前位置: 首页 > 面试题库 >

mysqldump-仅导出结构而没有自动增量

师承弼
2023-03-14
问题内容

我有一个MySQL数据库,我试图找到一种仅导出其结构而没有自动递增值的方法。mysqldump --no- data几乎可以完成这项工作,但是会保留auto_increment值。有没有不用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(用于 这样叶形更换)参数:

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

\b是无用的,有时候会打破命令。请参阅此SO主题以获取解释。因此,最佳答案是:

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


 类似资料:
  • 本文向大家介绍详解 linux mysqldump 导出数据库、数据、表结构,包括了详解 linux mysqldump 导出数据库、数据、表结构的使用技巧和注意事项,需要的朋友参考一下 详解 linux mysqldump 导出数据库、数据、表结构 导出完整的数据库备份: 说明:--add-locks:导出过程中锁定表,完成后回解锁。-q:不缓冲查询,直接导出至标准输出  导出完整的数据库表结构

  • 问题内容: 我正在寻找用于在mysql数据库中转储所有数据的语法。我不需要任何表格信息。 问题答案: 如果您使用触发器,则还需要包括 如果您使用的是选项,则还需要包括

  • 问题内容: 我正在使用带有Java程序的MySql数据库,现在我想将该程序提供给其他人。 如何导出MySql数据库结构而不包含数据,仅导出结构? 问题答案: 您可以通过mysqldump命令使用该选项

  • 我看到过许多关于将Eclipse或Gradle项目导入IntelliJ的问题,但没有一个问题问我应该使用哪种方法。我想只是导入Gradle? 我们在gradle上使用Eclipse,我可以用Gradle命令行或者(不太可能:)在Eclipse中构建和运行我的项目。只要我能在命令行上与gradle一起构建,我的老板就很高兴。 我找到了完全启用的免费学生版的 IntelliJ/Jetbrains 产品

  • 问题内容: 我有正在清理的庞大,混乱的数据库。它可以容纳500多个表,这是将Magento Enterprise和Joomla合并到一个数据库中的结果。 更糟糕的是,有一组70多个Joomla表完全没有使用。这些都以开头。 仅删除这些表将很容易,但是我想先将其“ bak”起来(看看我在那里做了什么?)。在我的脑海中,我可以想象这样的命令: 但这是行不通的。最好的方法是什么?谢谢! 编辑:是的,我可

  • 问题内容: 是否可以在不将SQL Server主列作为主键的情况下自动对其进行递增? 如果是,该怎么做。 谢谢 问题答案: 是的。不需要将列设为主键。 虽然我不确定这何时会有用。如果您有一个要用作PK的自然键,那么您可能还是想对代理替代键施加一个唯一约束。 出于建立FK关系的目的,SQL Server不在乎该列是否为PK,它只需要在其上具有唯一索引即可。