最近,我们学习了如何使用 Navicat 16 的新数据生成工具生成测试数据。它可以在多个相关表中生成大量复杂的测试数据,这一切都由一个多步骤向导引导。在今天的后续文章中,我们将使用 Navicat 16 完成创建 MySQL 测试数据库的过程。
复制生产数据库
为了获得最佳测试,最好的方法是复制生产数据库(DB)的结构,同时用经过清理的测试值替换“真实”数据。为了进行本教程,我们将使用 MySQL classicmodels 示例数据库的实例作为我们测试数据库的基础。这是在 Navicat Premium 16 中的示例数据库:
在 Navicat 中,完成一项任务通常有不止一种方法。复制数据库也不例外,有几种方法可以做到这一点。以下有两种方法:
创建新数据库
我们可以创建一个全新的数据库,然后为其生成测试数据,而不是复制数据库。为此,请按照以下步骤操作:
- 在导航窗格中,右键单击你的连接并选择“新建数据库”:
- 在弹出的窗口中输入数据库属性: 提示:如果你不确定要使用什么字符集和排序规则,你可以打开源数据库的 “编辑数据库”对话框来查看它们的值。
- 若要复制没有数据的表结构,只需选择“对象”窗格中的所有表并将它们拖到新数据库中。这时会出现一个弹出菜单,询问你是复制“结构和数据“还是“仅结构”: 我们选择后者。
从模型生成表
大多数组织都维护其数据库的模型图。Navicat 的模型工具可以从模型生成数据库对象(正向工程)以及从现有数据库生成模型(逆向工程)。现在让我们使用它来生成我们的测试表。
- 按照上一个练习的前两个步骤创建 classicmodels_test 数据库。
- 点击主工具栏中的“模型”按钮以查看可用的模型: 提示:如果你的数据库没有模型,你可以右键单击导航窗格中的数据库并从弹出菜单中选择“逆向模式到模型...”来生成一个模型。
- 在模型工具中打开模型,方法是在“对象”窗格中选择模型并点击“对象”窗格工具栏中的“设计模型”按钮:
- 在模型工具中,从主菜单中选择“文件”->“同步到数据库...”。
- 在“同步到数据库”对话框中,将 classicmodels_test 指定为目标数据库,然后点击“比较”按钮:
- 然后,Navicat 将确定要创建、更新或删除哪些对象以同步两个数据库。在我们的例子中,它将生成所有必要的表:
- 在下一个画面中,我们可以查看将要执行的 SQL 语句: 点击“开始”按钮运行脚本。
- 脚本运行时,我们将得到详细的进度报告:
从这里开始,我们只需要按照 在 Navicat 16 中生成测试数据文章中的步骤。
总结
Navicat 16 为在同一服务器或在完全不同的环境中复制现有数据库提供了许多选项。
说到 Navicat 16,如果你想试用一下,可以在这里下载 14 天试用版。