我有一个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,它只需要在其上具有唯一索引即可。