我正在使用MYSQL Workbench,并且我想使用相同的名称在同一服务器上克隆数据库。它应该将所有表结构和数据复制到新数据库中。
我知道通常的方法可能是使用data export
来生成数据库的sql脚本,然后在新数据库上运行该脚本,但是我遇到了一些问题。
无论如何,有没有更好的方法或更简单的方法呢?
答案 0 :(得分:1)
我试图在MySQL Workbench 8.0中做到这一点。但是,我一直收到有关列静态的错误。主要思想是使用位于MySQL Workbench安装目录中的mysqldump.exe导出数据。因此,假设有一个面向Windows的平台:
打开 Powershell ,导航到mysqldump.exe目录。就我而言,命令是:
cd C:\Program Files\MySQL\MySQL Workbench 8.0 CE
通过执行提供正确参数的mysqldump导出数据库:
./mysqldump.exe --host=[hostServerIP] --protocol=tcp --user=[nameOfUser] --password=[yourPassword] --dump-date=FALSE --disable-keys=FALSE --port=[portOfMysqlServer] --default-character-set=utf8 --skip-triggers --column-statistics=0 "[databaseName]"
在不更改目录的情况下,使用以下命令在Powershell中导入导入的文件(.sql):
Get-Content "[pathToExportedDataFile]" | ./mysql.exe --user=[nameOfUser] --password=[yourPassword] --port=[portOfMysqlServer] --host=[hostServerIP] --database=[nameOfNewDatabase] --binary-mode=1
您可以在文档here中查阅有关mysqldump选项的更多信息。
请注意以下几点:
答案 1 :(得分:0)
答案 2 :(得分:0)
您可以使用MySQL Workbench中的迁移向导。只需在源选择和目标选择中选择相同的本地连接,然后在手动编辑步骤中更改架构名称。深入到最后,瞧瞧-您有两个名称不同的相同数据库。