【问题标题】:Import a database to DataGrip(0xDBE)将数据库导入 DataGrip(0xDBE)
【发布时间】:2016-03-26 05:19:54
【问题描述】:

如何像在 DataGrip 的 phpmyadmin 中一样导入数据库?

我有从 phpmyadmin 导出的 .sql... 但是这些行很多,因此在尝试运行整个 .sql 时 IDE 会停止工作

【问题讨论】:

  • 您是否能够在 DataGrip 中找到快速执行此操作的方法?

标签: mysql datagrip


【解决方案1】:

在 DataGrip 中转到文件 > 打开并选择您的 mysql 转储文件。然后右键单击文件的选项卡以获取上下文菜单,然后选择“运行 [您的文件名...]”选项。它可能会要求您选择要应用运行的架构。但这就是我使用 DataGrip 从 phpMyadmin 导入转储的方式。

【讨论】:

  • 这不直观。我刚从 UI 中寻找解决方案来到这里,我从来没有考虑过右键单击 SQL 文件选项卡。谢谢。
  • 指令是右键单击数据库并“使用 mysql 恢复”...它什么都不做,也不会输出任何错误。
  • 这不适用于 MariaDB 源的 .sql 文件,但适用于 MySQL。在屏幕截图步骤之后,MariaDB 源在导入源中不可见。我必须从左侧源列表中右键单击数据库,然后单击“使用 'mysql' 恢复”以恢复我的数据库转储。
【解决方案2】:

Jetbrains documentation on running SQL scripts 没有提供大量有关处理大型插入语句的信息。 Datagrip 社区论坛中有一个discussion,显然即将推出的功能可以使处理大型脚本更容易。

引自话题:

可以从文件视图执行巨大的 SQL 文件(使用上下文菜单操作)。

我假设您正在尝试导入数据库导出,它是保存到文件中的一系列 SQL 语句。如果您尝试在内存中运行大型 SQL 文件,则可能存在内存问题。请尝试以下操作。

在文本编辑器的 SQL 文件中插入提交语句。这甚至可以在 datagrip 中完成。每几百个语句你可以放置一行

commit;

这应该从内存中清除以前的语句。我强烈建议将您编辑的文件与导出脚本分开保存。如果您需要全有或全无导入,则此方法不适用,这意味着即使一个语句或块失败,您也希望回滚所有语句。

【讨论】:

    【解决方案3】:

    1 - 转到查看->工具窗口->文件

    2 - 转到 schema 文件夹并在 Windows 资源管理器中打开它,然后在我的示例中通过您的转储文件,我将通过 MyDump.dmp

    3 - 右键单击​​ MyDump.dmp 并运行它。

    【讨论】:

      【解决方案4】:

      要从脚本文件导入数据,请按照运行数据库代码中的说明运行该文件。除了脚本文件,您还可以导入 CSV、TSV 或任何其他包含分隔符分隔值的文本文件。

      https://www.jetbrains.com/help/datagrip/import-data.html

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-10-22
        • 2016-04-26
        • 1970-01-01
        • 2015-11-05
        • 2016-12-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多