首页 > 解决方案 > 制作现有数据库的副本,其中没有数据

问题描述

我想复制一个数据库而不复制它的数据,我的意思是我只想复制结构和表和外键......而不是其中的数据。答案就在这里,但我不知道我应该在哪里复制它?在壳里?在工作台上?在查询?我在工作台的查询中输入了它,它有错误!先感谢您!

编辑

当我在我的 mysql shell 中运行它时,我得到了这个:

MySQL JS > mysqldump -u myusername -pmypassword -d olddb | mysql -u myusername -pmypassword -D newdb
SyntaxError: Unexpected identifier.

标签: mysqldatabase

解决方案


您需要在操作系统的命令行上运行它(而不是您之前尝试的 MySQL 外壳)。

在 Linux(包括 Mac)下,它看起来像:

smm@smm-HP-ZBook-15-G2:~/$  mysqldump -u myusername -pmypassword -d olddb | mysql -u myusername -pmypassword -D newdb

在 Windows 下:

C:\> mysqldump -u myusername -pmypassword -d olddb | mysql -u myusername -pmypassword -D newdb

这是假设 mysqldump 在您的命令行的 PATH 中(如果您收到 command not found 错误,则不是)。如何使用命令行和设置 PATH 取决于操作系统,超出了此答案的范围。


推荐阅读