反向工程MySQL数据库

时间:2022-08-05 05:40:56

如果想要反向工程一个实时数据库,那么在主菜单上选择“Database -> Reverse Engineer ...”菜单项。这将会打开“Reverse Engineer Database”(反向工程数据库)向导程序。

反向工程MySQL数据库

图1反向工程数据库向导程序

 

向导程序的首页使得你能够连接到你想要反向工程的一个实时数据库。你可以建立一个新的连接,或者选择一个之前已经创建和保存的连接。一个数据库连接所需的信息通常包括主机名、用户名、密码。

输入了这些信息之后,或者你已经选择了一个已保存的连接之后,点击“Next”按钮,进入下一个配置页面。

反向工程MySQL数据库

图2连接DBMS

 

检查显示出来的信息,确保数据库连接不会产生错误,然后点击“Next”按钮。

下一页会显示服务器上可用的数据库大纲。点击你想要处理的任何数据库大纲所对应的复选框。

反向工程MySQL数据库

图3选择数据库大纲

 

在你已经选择了想要的数据库大纲之后,点击“Next”按钮继续下一步操作。

然后,向导程序会显示它完成的任务,并且会显示操作结果的概要。

反向工程MySQL数据库

图4获取对象信息

 

点击“Next”按钮进行下一步处理之前,检查处理结果。

下一页是“Select Objects”(选择对象)页面。数据库模式中包含的每个对象类型(表、视图、例程,等等),在这个页面中都有对应的部分。如果你不希望从已有的数据库中导入所有的对象,那么这个页面就特别有用。这个页面为你提供了过滤导入对象的选项。每个部分都有一个“Show Filter”(显示过滤器)按钮。如果你不想要导入某个特定类型的所有对象,那么点击这个按钮。

反向工程MySQL数据库

图5选择对象

 

对于“Import MySQL Table Objects”(导入MySQL表对象)部分,如果你点击了“Show Filter”按钮,那么就会显示以下页面。

反向工程MySQL数据库

图6显示过滤器

 

在这个页面中,你可以选择想要导入的表。选择了想要导入的表之后,你可以通过点击“Hide Filter”(隐藏过滤器)按钮来隐藏过滤器。

在其他的部分中,例如“MySQL Routine Objects”(MySQL例程对象),也有类似的过滤器可以使用。

点击“Execute”(执行)按钮,到下一个页面继续处理。

然后,向导程序便会导入对象,无论操作是否成功,都会显示已经执行的任务。如果发生错误,你可以点击“Show Logs”(显示日志)按钮,查看发生错误的详细信息。

反向工程MySQL数据库

图7反向工程进展

 

点击“Next”按钮,进入下一个页面。

向导程序的最后一页提供了反向工程对象的一个概要信息。 

反向工程MySQL数据库

图8反向工程结果

 

点击“Finish”(完成)按钮,退出向导程序。

在退出MySQL Workbench之前,务必要保存数据库模式。在主菜单上选择“File -> Save Model”菜单项,将已经反向工程的数据库保存为一个MySQL Workbench文件,文件后缀为mwb。

 

反向工程期间的错误

在反向工程期间,应用程序会检查表和视图是否和已有的名称重名,必要时不允许出现重名。如果你尝试导入一个和已有对象重名的对象,你将会看到一条错误信息。如果想要查看在反向工程期间发生的任何错误,你可以点击“Show Logs”按钮。这将会显示一个含有消息列表的面板,包含反向工程期间产生的所有错误消息。点击“Hide Logs”按钮便可以关闭这个面板。

反向工程MySQL数据库

图9消息日志

 

如果你想要导入的对象和已有的一个对象重名,那么在反向工程之前,应当重命名已有的对象。

如果你要从多个数据库模式中导入对象,那么每个导入的数据库模式在“MySQL Model”(MySQL模型)页面的“Physical Schemata”(物理大纲)部分中都会有一个标签。

你不能反向工程一个和已有数据库模式重名的实时数据库。如果你想要这么做,那么首先应当重命名已有的数据库模式。