错误描述:
WordPress 大版本升级之后,通常需要升级数据库,但出现提示 “无需升级,您的WordPress数据库已经是最新的了!”,点击 “返回” 则退回首页,如此反复无法进入后台。
错误原因:
WordPress 升级时应当做好备份、关闭缓存插件,此问题即为未关闭缓存插件导致,memcached 缓存中还有历史版本内容,故需清除 memcached 缓存即可解决。
解决方法:
一、重命名 /wp-content/object-cache.php ,使缓存功能关闭;
二、进入 SSH 命令行模式,输入:
telnet 127.0.0.1 11211
通过 telnet 方式连接 memcached;
(如提示 "command not found",详见 “特别注意” 第三点说明)
三、链接成功后,输入以下命令清除 memcached 缓存:
flush_all
四、输入 quit 即可 telnet 退出连接;
五、将 /wp-content/object-cache.php 改回原名,恢复 memcached 缓存。
范例代码:
[root@admin ~]# telnet 127.0.0.1 11211
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
flush_all
OK
quit
Connection closed by foreign host.
特别注意:
一、127.0.0.1 为本机 memcached 地址,如果使用云服务,请更改成对应地址;
二、11211 为 memcached 默认端口,如有修改,请更改成对应端口;
三、如在步骤二遇到 “命令不存在” 提示:
telnet: command not found
则先尝试开启 telnet 服务:
service telnet start
如继续提示 “未识别的服务”:
telnet: unrecognized service
则可确定没有安装 telnet 服务,以下列命令安装:
yum install -y telnet
四、亦可通过 WordPress 安装 “WP Memcached Manager” 等插件清除缓存;
五、如 Memcached 为云服务,亦可通过相应服务商后台管理面板清除缓存;