没有数据的MySql导出架构

时间:2011-05-30 11:06:54

标签: mysql sql

我正在使用带有Java程序的MySql数据库,现在我想将程序交给其他人。

如何在没有数据的情况下导出MySql数据库结构,只有结构?

13 个答案:

答案 0 :(得分:856)

您可以使用mysqldump命令的<{1}}选项

--no-data

答案 1 :(得分:76)

是的,您可以将mysqldump--no-data选项一起使用:

mysqldump -u user -h localhost --no-data -p database > database.sql

答案 2 :(得分:14)

您还可以使用--no-data选项

提取单个表格
mysqldump -u user -h localhost --no-data -p database tablename > table.sql

答案 3 :(得分:5)

您可以将-d选项与mysqldump命令一起使用

mysqldump -u root -p -d databasename > database.sql

答案 4 :(得分:5)

不使用输出进行转储。

mysqldump --no-data <database name> --result-file=schema.sql

答案 5 :(得分:3)

您可以免费使用MYSQL管理员工具 http://dev.mysql.com/downloads/gui-tools/5.0.html

你会找到很多选项来导出你的MYSQL数据库

答案 6 :(得分:3)

请注意--no-data选项不包含视图定义。所以,如果你有一个像下面这样的观点 创建视图v1  选择aid AS id,  acreated_date AS created_date 从t1; 使用--no-data选项,视图定义将更改为以下内容 创建视图v1  选择1 AS id,1 AS created_date

答案 7 :(得分:2)

获取单个表格的创建脚本:
  - 选择所有表格(带换档键)
  - 右键单击​​表名,然后单击“复制到剪贴板”&gt;创建声明。

答案 8 :(得分:2)

如果您使用IntelliJ,可以启用数据库视图(查看 - &gt;工具窗口 - &gt;数据库)

在该视图中连接到您的数据库。然后,您可以右键单击数据库并选择&#34;复制DDL&#34;。其他IDE可能提供类似的功能。

IntelliJ DDL

答案 9 :(得分:1)

如果要转储所有数据库中的所有表且没有数据(仅数据库和表结构),则可以使用:

mysqldump -P port -h hostname_or_ip -u username -p --no-data --all-databases > db_backup.sql

这将产生一个.sql文件,您可以将其加载到mysql服务器上以创建新的数据库。 在生产环境中,这种情况的用例并不多,但是我每周都会这样做,以重置链接到演示网站的服务器,因此,无论用户在一周中的什么工作,在星期日晚上,一切都回滚到“新”状态: )

答案 10 :(得分:0)

shell> mysqldump --no-data --routines --events test> dump-defs.sql

答案 11 :(得分:0)

添加--routines和--events选项,还包括存储的例程和事件定义

mysqldump -u <user> -p --no-data --routines --events test > dump-defs.sql

答案 12 :(得分:-1)

您可以使用以下方法

mysqldump -d <database name> > <filename.sql> // -d : without data

希望它会帮助你