navicat 12 无法导入 excel 到腾讯云 cdb 的根本原因是 dns 解析失败:其依赖系统 resolver,而 cdb 内网域名仅能被腾讯云内网 dns(如 10.53.216.182)解析;本地或跳板机未配置该 dns 时,nslookup 返回空或公网 ip,导致连接卡在“正在解析主机名”,报 unknown host 或 connection timed out;还需关闭 navicat 12 中默认启用的「dns srv 记录查询」和「自动检测 ssh 隧道」两项干扰功能,并确保安全组放行 3306 端口、vpc 同一网络、字符集(utf8)、主键(bigint)及 excel 表头格式正确。
不能直接用 navicat 12 导入 excel 到腾讯云 cdb,除非你先解决 dns 解析和网络连通性问题——否则导入向导根本走不到“选择文件”那步,卡在连接阶段就失败了。
Navicat 12 连不上腾讯云 CDB 的真实原因
Navicat 12 本身不处理 DNS,它依赖操作系统 resolver。而腾讯云 CDB 的内网域名(如 cdb-xxx.tencentyun.com)只能被腾讯云 VPC 内网 DNS(比如 10.53.216.182)正确解析。本地机器或跳板机若没配这个 DNS,nslookup cdb-xxx.tencentyun.com 就会返回空或公网 IP,Navicat 会卡在“正在解析主机名”,最终报 Unknown host 或 Connection timed out。
- Windows 上验证:打开 cmd,执行
nslookup cdb-xxx.tencentyun.com,看返回的是否是10.x.x.x或172.x.x.x - Linux 上检查:
cat /etc/resolv.conf是否含腾讯云内网 DNS,而不是8.8.8.8 - 即使 DNS 正确,也要确认安全组放行了
3306端口,且你的机器/跳板机与 CDB 在同一 VPC
必须关掉的两个 Navicat 12 隐形开关
Navicat 12 默认启用「DNS SRV 记录查询」和「自动检测 SSH 隧道」,这两个功能在腾讯云内网环境下不仅无效,还会干扰解析、拖慢连接甚至导致失败。
- 连接设置里 → 点击目标连接 → 「编辑连接」→ 「高级」选项卡
- 取消勾选
DNS SRV 记录查询 - 取消勾选
自动检测 SSH 隧道 - 保存后重试连接,再进导入流程
Excel 导入前必须做的三件事
Navicat 能跑通导入向导 ≠ 数据能成功入库。字段类型、字符集、主键设置这三点不提前对齐,导入中途就会报错退出。
-
name和sex字段必须设为utf8字符集(不是utf8mb4,Navicat 12 对后者映射不稳定),否则中文写入变??? -
id字段要手动设为主键(PRIMARY KEY),且类型建议用BIGINT—— Excel 生成的超大 ID(如 10 万行以上)可能超出INT范围 - Excel 第一行必须是纯字段名,不能有合并单元格、空格或特殊符号;第二行起才是数据,且所有列行数必须一致
导入时最容易填错的三个参数
在导入向导第 4 步(“附加选项”页),这三个值填错会导致整表数据错位或截断,但错误提示极不明显。
-
栏位名行:默认是1,如果你 Excel 表头在第 2 行,就得改成2 -
第一个数据行:默认是2,但如果表头在第 1 行、数据从第 3 行开始,这里必须填3 -
最后一个数据行:不填则全读,但大数据量(如 50 万行)建议明确填上限,避免内存溢出或超时中断
真正卡点不在 Excel 格式或 Navicat 操作,而在 DNS、字符集、字段映射这三层隐性依赖上。少一个,导入就停在某个环节不动,还找不到报错源头。











