phpMyAdmin 5.0+ 中关系图由前端 JavaScript 渲染为 SVG,后端 PDF 导出功能已被彻底移除;唯一可靠导出方式是浏览器打印保存为 PDF,或先导出 SVG 再用 Inkscape 转 PDF。
phpMyAdmin 5.0+ 中“关系图”实际是 SVG 渲染,不是 PDF 导出
phpmyadmin 5.0 及之后版本已彻底移除后端生成 pdf 关系图的能力。你看到的“关系图”完全由前端 javascript(schema.js)动态渲染,底层依赖 relation 表定义的外键和显示位置。这不是配置没开或权限不足的问题,而是代码层删除了 export_pdf.php、pdf_schema 表结构支持等全部相关模块。
常见错误现象包括:在 Export 标签页选择 PDF 格式 → 导出的是 SQL 或数据,**完全不包含关系图**;在 Designer 视图点击“Export”按钮 → 无 PDF 选项;搜索设置项如 $cfg['Export']['pdf'] → 该配置项早已不存在。
正确入口:必须从 Schema 标签页进入,不是 Export 或 Designer
很多人卡在第一步——误点错入口。关系图只在数据库级页面的 Schema 标签页下存在,且需满足前置条件:
- 先点击数据库左侧导航中的
Relation view(不是 Structure 或 SQL),确保所有目标表都勾选并点击Save - 保存后页面顶部才会出现
Schema标签(不是菜单栏里的“导出”) - 点击
Schema→ 切换到PDF选项卡 —— 这里只是展示 SVG 图形,**没有“下载”按钮**
导出为 PDF 的唯一可靠方式:浏览器打印(Ctrl+P / Cmd+P)
这是当前最稳定、兼容性最好的方案,但有几个关键细节容易被忽略:
- 打印前务必关闭浏览器的“背景图形”选项(Chrome/Firefox 默认关闭,Edge 默认开启 → 启用会导致连线变灰、文字消失)
- 页面尺寸建议设为
A3或Legal,缩放选Fit或100%,否则大图会被裁剪 - 不要用“另存为 HTML”再转 PDF —— SVG 内联样式会丢失,导致布局错乱
- 若中文显示为空白方块,说明字体未嵌入;此时应先导出 SVG,用 Inkscape 打开后另存为 PDF(Inkscape 自动嵌入字体)
导出 SVG 后手动转 PDF 的注意事项
右键关系图 → “复制图像地址”(Firefox)或“检查元素后复制 <svg> 源码”(Chrome)可获取原始 SVG。但注意:
立即学习“PHP免费学习笔记(深入)”;
- 部分旧版 phpMyAdmin 输出的 SVG 缺少命名空间声明,需手动在文件开头补上:
<svg xmlns="http://www.w3.org/2000/svg"> - 直接右键“图片另存为”得到的是 PNG,放大后模糊,且不保留矢量信息
- 在线转换工具(如 cloudconvert.com)对复杂 SVG 支持不稳定,建议优先用本地 Inkscape(开源免费)
真正麻烦的不是操作本身,而是花时间找对入口和理解“Schema”标签页与“Export”标签页的本质区别——前者管图,后者管数据,二者完全隔离。



















