如何使用HeidiSQL复制数据库?

时间:2013-02-15 09:02:11

标签: mysql database heidisql

我在Windows XP上安装了MariaDB本地安装 我创建了一个空数据库db_y,我希望用数据库db_x的表填充,我从MySQL实例(使用HeidiSQL)导出为转储文件。

c:\ > mysql -u root -h localhost -p db_y < "X:/archive/db_x.sql"

我得到了以下内容:

- MariaDB-inst
    +db_x  
    +db_y

db_y保持为空并且添加了转储文件中的db_x(db_x是我导出的原始数据库的数据库名称)。

我需要做什么才能获得所需的数据库名称?
我以为我可以在db_x.sql文件中更改数据库名称,但我不想打开这么大的文件。
我可以更改上面的导入命令,以便更改数据库名称吗?
我也对这种解决方案感兴趣:

CREATE DATABASE y FROM DATABASE x

这样的事情可能吗?
在网上我找到了不推荐的解决方案RENAME DATABASE和ALTER DATABASE db_x UPGRADE DATA DIRECTORY NAME 但是真诚地,我更喜欢使用新名称创建一个新数据库。 谢谢你的帮助。

4 个答案:

答案 0 :(得分:21)

考虑您有两个数据库:source_dbtarget_db。如果您想数据库内容从source_db复制到target_db,您应该按照HeidiSQL中的步骤进行操作:

  1. 右键单击source_db,然后选择:将数据库导出为SQL
  2. 现在更改输出的值,然后选择数据库
  3. 将出现一个选择框,选择target_db以及全部。
  4. enter image description here

答案 1 :(得分:2)

使用HeidiSQL可以轻松地将数据库从一个实例传输到另一个实例:

  1. 在实例y中创建数据库db_y
  2. 单击转储图标(或右键单击)。应激活实例y。
  3. 在“输出”选项中选择数据库
  4. 在“数据库”选项中,选择db_y
  5. 在左侧选择实例x和数据库x
  6. 导出

答案 2 :(得分:1)

试试MySQL Workbench。它是由MySQL制作的,我发现它非常适合备份数据库并以不同的名称恢复它。

http://dev.mysql.com/downloads/workbench/

答案 3 :(得分:1)

HeidiSQL的导出对话框最近得到了一个名为“Max INSERT size”的新选项。这可以控制批量/多个INSERT命令中的行数。

此外,此导出对话框还有documentation