错误执行任务 write() 参数必须是 str,而不是字节 | MySQL 工作台

Eri*_*ago 13 mysql mysql-workbench

在我开始使用 MySQL 工作台时全新安装 Windows 10 后,当我尝试转储数据库时出现此错误。

我在任何地方都找不到任何关于它的信息,我唯一发现的是 phyton 的问题,但与 Workbench 无关。

转储数据库后的输出:

08:29:00 Dumping foo(all tables)
Error executing task write() argument must be str, not bytes
08:29:01 Export of b'C:\\Users\\erick\\Documents\\dumps\\Dump20210121 (2).sql' has finished
Run Code Online (Sandbox Code Playgroud)

输出文件是空白的,一些想法?

mag*_*nes 25

您可以禁用(取消选中)选项create schema。这很烦人,但它有效。

  • MySql Workbench 充满惊喜 (4认同)
  • 同样令人烦恼的是:整个备份在目标系统上失败,因为“错误 1049 (42000):未知数据库”,因为没有 CREATE SCHEMA。 (2认同)

小智 18

如果您有最新的 MySQL Workbench (8.0.23),只需卸载并安装 MySQL Workbench 8.0.20。那对我有用。


cl0*_*0ne 10

此问题的另一个解决方法是编辑wb_admin_export.py.

dump_to_folder(第1679行)中替换

self.out_pipe = open(path,"w")
Run Code Online (Sandbox Code Playgroud)

self.out_pipe = open(path,"wb")
Run Code Online (Sandbox Code Playgroud)

dump_to_file(第1957行)中替换

self.out_pipe = open(self.path,"w")
Run Code Online (Sandbox Code Playgroud)

self.out_pipe = open(self.path,"wb")
Run Code Online (Sandbox Code Playgroud)