今日在帮一同事处理dede一些问题时发现忘记了管理员密码,囧。重新安装的话太费劲,便想进入mysql中修改密码,整个过程还是比较麻烦。本想从自己一个dedeV5.5的测试站点上复制密码来更新,但由于忘记密码的站点版本是V5.1的,覆盖密码后却怎么也登录不上。后来Google之,发现原来V5.1的加密算法跟V5.5的不同,生成的密码密文亦不同。几经周折,找到一加密后的密文是“c3949ba59abbe56e057f”,然后到sql中执行更新,具体脚本如下:

---将管理员密码重置为123456Update `dede_admin` set pwd='c3949ba59abbe56e057f' where userid='admin'

由于要进入到数据库中去执行该语句,相对比较麻烦,于是写成个脚本,内容如下:

<?php/* 作用:DEDECMS 重置管理员admin的密码为123456,适用于DedeCms V5 方法:上传到服务器DEDE系统的目录,运行此文件,然后进入后台修改密码 注意:重置后请立刻删除此文件! Author:Johnny WebSite: http://www.bokelife.com/*/require_once(dirname(__FILE__)."/include/config_base.php");$dsql = new DedeSql(false);$dsql->ExecuteNoneQuery("Update `#@__admin` set pwd='e10adc3949ba59abbe56e057' where userid='admin'");$dsql->Close();echo '密码重置成功!新密码为123456。';echo '访问作者网站:<a href=\'http://www.bokelife.com/\'>www.bokelife.com</a>';?>

将上面内容复制进入文本编辑器后保存为resetpass.php,上传到站点根目录,运行该文件,成功执行后请立即删除该文件。

注意:上面脚本是必须保证你的管理员用户名为“admin”的前提下方可执行,如果非admin,请将userid=’admin’中的admin改成你的用户名再执行即可。

具体文件可以点击这里下载:dede_resetpass.zip

压缩包中有两个文件,一个是(resetpass_5.php)用于dedeCMS V5.1的版本,另外一个(resetpass_5_5.php)是用于dedeCMS V5.5的版本。