本节记录了自 MySQL Workbench 5.2.15 发布以来应用的所有更改和错误修复。
在 SQL 编辑器中,运行单个查询的键盘快捷方式已更改为Control+Enter。要运行所有查询,键盘快捷键已更改为 Control+Shift+Enter。(错误号 50747)
添加了组合键Control+Q作为主菜单项File和 Exit的快捷方式。(缺陷号 50727)
在 SQL 编辑器中,注释已添加到 EDIT 语句以阐明其功能。(漏洞 #50705)
管理数据库连接对话框现在可以防止删除服务器实例使用的连接 。(错误号 50547)
在管理员的日志选项卡中,无法查看长查询或复制其文本。MySQL Workbench 已更改,因此双击“日志”选项卡中的条目会弹出一个包含完整文本的对话框,并且还提供了一个“复制详细信息”按钮来复制条目的文本。(漏洞 #49442)
-
用于将数据导出到磁盘的数据转储设施已被修改以启用
--single-transaction
要指定的选项。如果
--single-transaction
启用,表选择将受到以下方式的限制:如果选择了单个模式,则可以根据需要选择/取消选择其表。
如果选择了多个模式,则必须选择这些模式中的所有表,因为在这种情况下将使用 mysqldump 。
--databases
(漏洞 #49220)
-
打开具有多个 EER 图的模型时,所有 EER 图将显示在选项卡中。无论在保存模型之前是否在选项卡中显示了 EER 图,都会发生这种情况。
MySQL Workbench 已更改,以便保存EER 图选项卡状态,以便在打开模型时,仅恢复保存时打开的那些 EER 图选项卡。这可以防止不必要的界面混乱。(错误#44454,错误#50732)
-
安全修复: 密码以纯文本格式存储在文件中
server_instances.xml
。为了提高安全性,MySQL Workbench 已通过以下方式进行了更改:
密码不再存储在连接 XML 文件中。
打开连接时,将显示密码请求对话框并请求密码。密码可以选择存储在系统钥匙串/保险库/钥匙圈中。
编辑连接配置文件时,您还可以将密码存储在系统钥匙串中。
为了兼容性,当 MySQL Workbench 启动时,它将查找存储在 XML 文件中的密码。如果找到任何密码,它将从 XML 文件中删除并自动存储在钥匙串中。当 MySQL Workbench 退出时,连接文件将没有密码。
(漏洞 #50194)
-
当使用主屏幕上的服务器管理链接或管理安全链接 通过 SSH 连接登录到远程服务器时,如果密码对话框关闭,并且确认取消 SSH 连接对话框,则会生成此异常:
Exception = System.Runtime.InteropServices.SEHException Message = External component has thrown an exception. FullText = System.Runtime.InteropServices.SEHException: External component has thrown an exception. at MySQL.Forms.DrawBoxImpl.drawbox_mouse_click(Object sender, MouseEventArgs e) ...
(漏洞 #51088)
在Create a new server instance向导中,如果在向导的最后一页 按下Back按钮,然后按下 Next按钮,则会生成一个错误,指出服务器实例已经存在。(漏洞 #51060)
使用File、Export、 Forward Engineer ALTER Script导出模型导致 MySQL Workbench 生成异常
AccessViolationException
。(漏洞 #51053)-
在 SQL 编辑器中,如果使用Alter Table 对话框,尝试在重命名索引后应用更改会导致此错误:
SQL Error 1091: Can't DROP 'username_foo'; check that column/key exists
(缺陷号 50970)
在“管理服务器实例”对话框 的“系统配置文件”选项卡中 ,如果使用浏览按钮...设置了“配置文件路径”文本字段,则文本字段中的值似乎已正确设置为所选文件。但是,如果对话框关闭并重新打开,则新路径不会显示在文本字段中。如果路径是手动输入的,而不是使用浏览按钮,即使关闭并重新打开对话框,文本字段也会显示正确的路径。(漏洞 #50965)
在 SQL 编辑器中,如果为表调用了编辑数据对话框,并且编辑了一些数据,则在单击应用 SQL按钮时 MySQL Workbench 会崩溃。(漏洞 #50920)
#1046 - No database selected
包含触发器和视图的导出脚本在 MySQL 服务器上运行时 导致错误。这是由于USE DATABASE
生成的脚本中缺少语句。(缺陷号 50900)第二次调用File和 Print导致 MySQL Workbench 崩溃。(缺陷号 50885)
在 MySQL Workbench 中的建模功能中使用的 SQL 代码编辑器,例如在表编辑器的触发器 选项卡中,无法识别和突出显示 SQL 代码错误。(漏洞 #50835)
-
在 SQL 编辑器中,状态栏中显示的文本“ Parsing SQL ... ” 在解析完成后仍然存在。
MySQL Workbench 已更改为在解析成功完成后显示“未发现错误” 。(缺陷号 50833)
如果 MySQL 服务器设置为仅接受命名管道连接,然后使用命名管道连接在 MySQL Workbench 中创建服务器实例,则随后无法使用 MySQL Workbench 连接到服务器。(漏洞 #50830)
在 SQL 编辑器选项卡之间切换时,SQL 编辑器中展开的 Schemata Palettes 会折叠。(漏洞 #50815)
-
在 SQL 编辑器中,缺少用于执行 SQL 语句的工具栏按钮。
MySQL Workbench 现在还包括一个新的工具栏按钮来执行单个语句。(漏洞 #50791)
在 MySQL 模型选项卡中,如果启动表编辑器然后单击主屏幕选项卡,MySQL Workbench 会显示 MySQL Workbench意外错误对话框。(缺陷号 50768)
在 MySQL 模型页面上,使用角色和用户向模式授予权限会导致在对模型进行正向工程时出错,并将生成的脚本应用于 MySQL 服务器。由于 SQL 语法无效,脚本失败,因为创建的 SQL 没有正确地将权限应用到所有模式对象。(缺陷号 50762)
在 Administrator 的数据转储工具中,如果表名包含空格,则尝试将架构导出到磁盘会失败。(缺陷号 50728)
-
在 Workbench Scripting Shell 对话框中,单击值检查器面板(左下角)中的一个项目导致异常:
System.Runtime.InteropServices.SEHException: External component has thrown an exception. at MySQL.Grt.TreeModel.expand_node(NodeId node) at MySQL.Grt.GrtTreeModel.TreeViewExpanding(Object sender, TreeViewAdvEventArgs e) at System.EventHandler`1.Invoke(Object sender, TEventArgs e) at Aga.Controls.Tree.TreeViewAdv.OnExpanding(TreeNodeAdv node) ...
(缺陷号 50683)
在管理员的数据转储工具中,无法导入路径包含空格的文件。(错误#50609,错误#50007)
在 SQL 编辑器中,出现了无法关闭所有结果选项卡的情况。此外,使用相同标签错误地创建了结果选项卡。(错误#50334,错误#50865)
在“管理数据库连接”对话框中,无法为套接字/管道连接类型选择默认架构,因为对话框用户界面未提供此功能。(缺陷号 50283)
可以使用包含空格的密码连接到数据库。但是,当使用此连接尝试备份时,由于未正确引用密码,操作失败。(漏洞 #50213)
-
数据导出操作失败时mysqldump 生成的消息很难解释,例如:
Operation failed with exitcode 2
(缺陷号 50137)
在 SQL 编辑器中,当编辑表数据时,如果应用更改时操作失败,则错误消息不清晰可见。(漏洞 #50112)
-
在 SQL 编辑器中,如果
LONGTEXT
在表数据实时编辑器中编辑字段,则在应用更改时会生成错误。MySQL Workbench 也已更改,因此需要在外部编辑器中编辑大文本值,然后将其粘贴到网格单元格中。(错误#50111、错误#50692、错误#50948、错误#50814)
将模式与实时服务器同步时,带有类型的列的比例
DECIMAL
被错误地设置为零。例如,在生成的脚本DECIMAL(17,5)
中发现 a 被设置为。DECIMAL (17,0)
(缺陷号 50110)当创建非 SSH 服务器实例并与远程服务器建立连接时,只有管理员的数据转储 工具可用。如果为服务器实例取消选择基于 SSH 的管理,则会出现同样的问题。(缺陷号 50098)
在 SQL 编辑器中,如果在 Overview选项卡中选择了一个数据库,然后选择了 Drop Schema...上下文菜单项,或者单击了 drop schema 工具栏按钮,则会显示 DROP DATABASE 对话框。但是,如果随后单击对话框关闭按钮取消对话框,数据库仍会被删除,而不是不受对话框取消的影响。(错误#50072,错误#50960)
-
在创建新服务器实例向导中,如果选择了Windows 类型的操作系统(MySQL 5.1 安装程序包) ,则会在测试设置页面 上生成此错误:
Error: File C:\Program Files\MySQL\MySQL Server 5.1\my.ini doesn't exist
这是因为该文件实际上存储在
C:\Programas\MySQL\MySQL Server 5.1\my.ini
.在英语和非英语系统上都报告了类似的无法找到配置文件的错误。(错误#50050、错误#50635、错误#50966、错误#50873、错误#51008)
如果从实时数据库中删除了一个表,然后同步了模型,则会检测到删除的表,但该表并未从相关模型中删除。(漏洞#50000)
对于默认的 MySQL 服务器安装,不会 创建
my.ini
ormy.cnf
文件。这在 MySQL Workbench 中创建服务器实例时被证明是有问题的,因为创建一个新的服务器实例向导需要指定配置文件。如果配置文件的路径留空,向导会显示一个模型错误对话框。或者,如果输入配置文件的标准位置之一,则在随后尝试更改管理屏幕的配置部分中的配置值时会出现问题。问题包括 MySQL Workbench 挂起,以及重复请求“超级用户”密码。(缺陷 #49766,缺陷 #50317)-
在 SQL 编辑器中,在添加例程对话框中,如果使用了模板,并且
SELECT 1;
向模板添加了一个简单的语句,则在应用更改时会生成此错误:ERROR 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 3 SQL Statement: CREATE PROCEDURE `world`.`new_routine` () BEGIN SELECT 1
(漏洞 #49710)
-
在Forward Engineer SQL 脚本向导中,选中复选框Omit Schema Qualifier in Object Names会导致
CREATE SCHEMA
语句被删除。DROP SCHEMA
语句也被删除,即使选中了 Generate DROP SCHEMA复选框。MySQL Workbench 已更改,因此如果选中对象名称中的省略模式限定符复选框,则可以选择性地选中复选框 插入 USE 语句,以启用或禁用
USE
语句的使用。(漏洞 #49682) 如果 Administrator 中的数据转储工具用于导出到独立文件,则在导入该文件时会生成未处理的异常。(漏洞 #49529)
如果 MySQL 服务器已停止,则尝试访问管理员中的 日志、帐户、 连接、变量 或数据转储选项卡会导致未处理的异常。(漏洞 #49439)
MySQL Workbench 不支持需要输入密码的 SSH 密钥。(漏洞 #49418)
使用 SSH 连接管理远程服务器时,MySQL Workbench 反复提示用户输入密码,即使已指定密钥文件也是如此。(漏洞 #49307)
在 SQL 编辑器中,当使用实时编辑器时,如果 从主菜单中选择查询、导出结果并选择 CSV 输出格式,则发现导出的数据是制表符分隔格式,而不是 CSV 格式。(漏洞 #49303)
当 MySQL Workbench 使用 SSH 连接连接到远程服务器并执行数据导出操作时,MySQL Workbench 实际上尝试在本地服务器实例上执行数据导出,而不是在连接的远程服务器上执行数据导出。如果远程和本地服务器有一个共同的用户帐户,则可以执行看似成功完成的备份,但其中包含来自本地服务器而不是连接的远程服务器的数据。(漏洞 #49295)
在 SQL 编辑器的Alter Table对话框中,似乎提供了对触发器的支持,但缺少基础功能。(漏洞 #49287)
在 SQL 编辑器中,如果调用了 Alter Table,并且更改了列的排序规则,则在单击Apply 后未检测到任何更改 。(漏洞 #49277)
管理员“数据转储 ”部分“高级选项”选项卡中 用于选项的描述不够清晰,在某些情况下还过时。(漏洞 #49224)
导入日志包含带有多余括号的消息。(漏洞 #49218)
在管理员中,一旦启动,就没有取消“导出到磁盘”过程的工具。此外,“开始导出”按钮在导出过程中错误地保持启用状态,使用户能够启动新的导出过程,从而导致错误。(漏洞 #49115)
-
在管理员的数据转储工具中,如果选择了一个架构,但未选中其相应的复选框,然后选择了其中的几个表进行导出,则在单击“开始导出”按钮时会出现此错误:
Nothing to do, no schemas or tables selected.
(漏洞 #49110)
在创建新服务器实例向导中,使用默认的 SSH 密钥路径,
~/.ssh/id_rsa
在测试连接时导致“找不到文件”错误。/home/username/.ssh/id_rsa
但是,如果作为连接测试成功输入路径。同样的问题也存在于“管理数据库连接” 对话框中。(漏洞 #49090)使用 New Connection 创建的第一个连接没有立即出现在可用连接列表中。(错误 #49079,错误 #49801)
管理员中“状态变量”选项卡 的 DDL 部分缺少许多变量 。(错误 #49073,错误 #49077)
在配置文件编辑器中,可以选择目录,例如常规选项卡上的Temp 目录,而无需指定相应的路径。(漏洞 #49035)
在配置文件编辑器的常规选项卡中,存在默认表类型选项 ,即使它在 MySQL Server 5.0 中已被弃用。此外,选择此选项并应用更改不会更改服务器配置文件。(漏洞 #49006)
如果在服务器实例中更改了检查服务器状态的命令,则更改不会生效,除非重新启动 MySQL Workbench。(漏洞 #48992)
MySQL Workbench 没有正确检测到多个服务器在同一主机上运行的 MySQL 服务器的状态,因此在管理屏幕上显示了不正确的服务器状态。(漏洞 #48975)
在Forward Engineer SQL Script向导中,选择Skip Creation of FOREIGN KEYS复选框未反映在生成的脚本中。(漏洞 #47969)
使用 MySQL Workbench 创建
ALTER
脚本时,生成的脚本不反映仅列名大小写发生变化的列。(漏洞 #45556)如果对包含未定义引擎的表的模式进行逆向工程,然后在 MySQL Workbench 中更改引擎类型,则在导出模型时,ALTER 脚本不包含更改表引擎的代码。(漏洞 #45110)