util.dumpInstance()
当 MySQL Shell 的实例转储实用程序、模式转储实用程序util.dumpSchemas()
和表转储实用程序 的一致选项设置为 true 时util.dumpTables()
,该实用程序会在转储期间锁定表以进行备份。如果用于运行该实用程序的用户 ID 具有RELOAD
特权,则该实用程序会使用一条FLUSH TABLES WITH READ LOCK
语句来设置全局读锁。如果用户 ID 没有该权限但确实有LOCK TABLES
权限,则该实用程序会发出一系列LOCK TABLES
声明。以前,该实用程序会在同一会话中发出这些语句,从而导致先前锁定的表被解锁。该实用程序现在锁定主线程会话中的系统表,并创建额外的会话来锁定正在转储的其他表。(缺陷号 32788788)MySQL 数据库服务验证所有用户帐户都有密码,但 MySQL Shell 的实例转储实用程序
util.dumpInstance
之前在指定选项时没有检查这一点ocimds
,导致加载转储文件时出错。该实用程序现在将此包含在兼容性检查中,如果用户帐户没有设置密码,则返回错误,除非用户帐户被标识为角色。skip_invalid_accounts
可以使用选项应用的 修改compatibility
现在还删除没有设置密码的用户帐户。如果用户帐户被标识为角色,该实用程序会使用该CREATE ROLE
语句转储该帐户。(缺陷号 32741098)在某些情况下,MySQL Shell 的转储加载实用程序 在指定选项
util.loadDump()
时不会删除进度状态文件resetProgress
。(缺陷号 32734880)当 MySQL Shell 的转储加载实用程序
util.loadDump()
用于应用仍在创建过程中的转储(使用waitDumpTimeout
选项),并且预验证请求用于转储时,在获取.idx
文件时可能会返回授权错误桌子。该实用程序在处理清单时的行为现已重构,以创建正确的.idx
文件句柄并使用正确的预验证请求 URL。(缺陷号 32734817)