wp_blogs表无数据导致子站表不显示,需确保wp_blogs.blog_id正确、wp_site.id=1存在且domain为纯域名、MySQL用户有对应前缀表的SELECT权限。
wp_blogs表里没数据,新站点的表根本不会被phpMyAdmin列出
wordpress多站点网络的每个子站对应一组独立数据表(如wp_2_posts、wp_3_options),但phpmyadmin只显示当前数据库中真实存在的表。如果wp_blogs表里没有正确记录,或者blog_id值与实际表名不匹配,那些表就不会生成,自然也看不到。
常见错误现象:
- 在后台创建了新站点,但phpMyAdmin里查不到
wp_X_*系列表 -
wp_blogs中blog_id = 5,却找不到wp_5_posts - 手动插入
wp_blogs记录后,访问子站报错“Table doesn't exist”
必须确保:
-
wp_blogs.blog_id是整数,且未被其他站点占用(别用MAX(blog_id) + 1,残留deleted = 1的记录会干扰) - 插入后立即手动创建对应前缀的全套表(
wp_{id}_posts、wp_{id}_options等),WordPress不会自动建表 -
wp_blogs.public、archived、spam、deleted全为0,任一为1都会让站点“隐形”
选错子域名/子目录模式,导致wp_blogs.domain或path字段非法
phpMyAdmin能列出表,不代表WordPress能路由到它们——wp_blogs.domain和path字段直接决定URL解析逻辑。填错会导致站点无法加载,连带让对应表在phpMyAdmin里显得“无用”或“孤立”。
典型问题:
立即学习“PHP免费学习笔记(深入)”;
- 本地开发选了「子域名」,
wp_blogs.domain写成site1.localhost→ 浏览器无法解析,站点打不开,你可能误以为表“失效” - 本该是子目录模式,却把
path设成site1(缺开头斜杠),应为/site1/ - 从子目录切到子域名后,只改
wp-config.php里的define('SUBDOMAIN_INSTALL', true),没批量更新wp_blogs和所有站点的wp_{id}_options中home/siteurl
验证方法:在phpMyAdmin里打开wp_blogs,对照你访问子站时浏览器地址栏的完整URL,检查domain是否完全一致、path是否以/开头和结尾。
wp_site表损坏或被误改,整个网络表结构“失联”
wp_site表只有一条记录,存的是全网根站点信息(id = 1)。它不存具体文章或用户,但却是WordPress识别“这是一个多站点网络”的唯一锚点。一旦这行数据丢失或字段错乱,WordPress会退化成单站模式,所有wp_X_*表就变成孤儿表——phpMyAdmin照常显示,但WordPress完全无视它们。
🎯 HR面试评价助手(Word版格式) 生成可直接复制到Word文档的标准格式HR面试评价 【使用方式】 1. 发送口令:HR面试评价 2. 粘贴JD文字 3. 上传简历文档 4. 上传面试记录(可选) 5. 复制生成的评价到Word 【输出特点】 - 纯文本格式,可直接粘贴到Word - 层次清晰,标题加粗...
容易被忽略的操作:
- 用SQL工具批量清理
wp_options时,误删wp_site表 - 手动修改
wp_site的domain字段,填了带http://的完整URL(应只填域名,如example.com) - 迁移数据库时漏掉
wp_site表,或导入时主键冲突导致覆盖失败
修复动作极简但关键:
- 确认
wp_site.id = 1存在,且domain字段是纯域名(无协议、无路径) -
path字段必须是/(子目录模式)或/(子域名模式下也固定为/) - 别碰
wp_site的registered时间戳,WordPress不依赖它做逻辑判断
phpMyAdmin权限不足,看不到其他前缀的表
不是所有MySQL用户都有权查看数据库里全部表。如果你用的数据库账号(比如wp_user)只被授予了wp_*基础表的权限,那wp_2_*、wp_3_*这类动态前缀的表默认不可见——phpMyAdmin登录后只会列出该用户有SELECT权限的表。
检查步骤:
- 在phpMyAdmin右上角点击用户名 → 「Privileges」→ 找到当前用户 → 点「Edit privileges」
- 切换到「Database-specific privileges」→ 确认「Wildcard」或具体数据库名被勾选,且「Tables」权限包含
SELECT - 重点看「Table-specific privileges」里有没有按前缀(如
wp\_2\_%)单独限制
最稳妥的解决方式:用root或具备ALL PRIVILEGES ON *.*的账号登录phpMyAdmin,避免权限遮蔽带来的误判。
多站点表结构本身不复杂,但wp_blogs、wp_site和MySQL权限三者任何一个出偏移,都会让那些表“存在却不可见”或“可见却不可用”。动手前先盯紧这三个点,比盲目重建表更省时间。


















