必须切换到“自定义导出”模式并选择“CSV”格式(非“CSV for MS Excel”),才能启用Fields terminated by等分隔符设置;勾选“将列名放在首行”,确保分隔符、包裹符和行结束符配置生效。
导出时找不到自定义分隔符选项?检查导出方法是否正确
phpmyadmin 默认的「快速导出」模式不暴露字段分隔符设置,必须切换到「自定义导出」才能修改。点击表或数据库页面右上角的「导出」标签页后,别直接点「执行」——先在「导出方法」下拉菜单中选「自定义」,否则 fields terminated by 等选项根本不会出现。
CSV 导出里 Fields terminated by 无效?确认格式和转义配置匹配
即使选了自定义导出,设了 Fields terminated by ',',导出的 CSV 仍可能用制表符或空格分隔——这是因为 phpMyAdmin 会根据所选「格式」自动覆盖部分设置。必须同时满足:选择格式为 CSV(不是 CSV for MS Excel),并勾选「使用列名作为第一行」;否则 Fields terminated by、Fields enclosed by、Lines terminated by 这三项才真正生效。
常见错误现象:Fields enclosed by 设为双引号但导出内容没被包裹,往往是因为 Fields escaped by 也设了反斜杠,而某些版本 phpMyAdmin 对转义逻辑有冲突,建议留空该字段。
导出大表时字段含换行符导致 CSV 错位?提前处理数据或调整封装策略
MySQL 字段值里有 \n 或 \r 是 CSV 错行的主因。phpMyAdmin 不会自动检测内容是否需封装,它只按你设的 Fields enclosed by 统一封装所有字段。如果字段本身含换行符但未被引号包裹,Excel 或 Python 的 csv.reader 就会误判行数。
- 稳妥做法:导出前在 SQL 查询中用
REPLACE(REPLACE(column, '\n', ' '), '\r', ' ')清洗 - 或强制启用封装:把
Fields enclosed by设为",并确保Fields escaped by为空(避免双重转义) - 注意:phpMyAdmin 5.2+ 对超长字段的封装更严格,旧版本(如 4.9)可能跳过封装逻辑,务必实测导出结果
导出后中文乱码且分隔符异常?优先检查浏览器响应头与字符集设置
导出 CSV 出现中文乱码,八成不是分隔符问题,而是字符集没对齐。phpMyAdmin 导出时默认用服务器连接字符集(通常是 utf8mb4),但浏览器可能按 ISO-8859-1 解析。解决路径很直接:
立即学习“PHP免费学习笔记(深入)”;
- 导出前,在「格式-specific options」区域找到
Character set of the file,选utf-8 - 导出后,用记事本打开 →「另存为」→ 编码选
UTF-8 with BOM(尤其给 Excel 用) - 如果仍错乱,说明 phpMyAdmin 配置里
$cfg['Export']['charset']被硬编码为latin1,需改配置文件或联系管理员
分隔符本身是纯 ASCII 字符,乱码不会影响它,但人眼识别时容易误判——比如看到 䏿,value 就以为逗号丢了,其实是编码错位导致的视觉干扰。



















