You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker环境下含繁体中文的MySQL备份与恢复问题求助

解决Docker容器导出含繁体中文MySQL数据库的恢复错误问题

错误原因

ERROR at line : Unknown command '\0' 是因为导出时终端重定向或伪终端分配导致备份文件混入了无效空字符,多字节字符(如繁体中文)场景下更易触发这类编码干扰问题。

正确导出方案

方案1:容器内生成备份再复制到宿主机

先在Docker容器内直接生成备份文件,规避终端输出干扰:

docker exec testsigma_mysql /usr/bin/mysqldump -u root --password=root --default-character-set=utf8mb4 testsigma_opensource > /tmp/backup.sql

再将容器内的备份文件复制到宿主机:

docker cp testsigma_mysql:/tmp/backup.sql ./backup.sql

方案2:禁用伪终端直接重定向输出

给docker exec添加-T参数,关闭伪终端分配,避免终端编码处理修改输出内容:

docker exec -T testsigma_mysql /usr/bin/mysqldump -u root --password=root --default-character-set=utf8mb4 testsigma_opensource > backup.sql

恢复时的注意事项

恢复操作同样需要避免终端干扰,同时指定统一字符集保证繁体中文正常读取:

docker exec -i testsigma_mysql /usr/bin/mysql -u root --password=root --default-character-set=utf8mb4 testsigma_opensource < backup.sql

繁体中文兼容性确认

确保目标数据库、表的字符集为utf8mb4(支持所有Unicode字符,包括繁体中文生僻字),可在MySQL客户端执行以下命令验证:

SHOW CREATE DATABASE testsigma_opensource;
SHOW CREATE TABLE your_table_name;

内容的提问来源于stack exchange,提问作者weiling shao

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 09:12:39