DedeCMS
系统的管理员账号与密码都是存储在数据库中的。
如果发生密码丢失或其它情况,我们可以通过重写数据库(数据表)的方式来重置 DedeCMS
的账号与密码。
如此操作的前置条件是可以登录并管理数据库。如果没有或拿不到数据库的管理权限,那就行不通了。
第一步:登录数据库
如果是虚拟主机(虚拟空间),主机商一般都有提供管理数据库的网页工具,从主机管理面板进入到管理数据库的网页工具,就可以了。具体情况,需要咨询主机服务商。
如果主机商没有提供数据库网页管理工具,那也可以通过 数据库地址
、 数据库账号
、 数据库密码
等,使用 Navicat
等数据库远程管理工具,远程登录到数据库。有些主机商会出于安全方面的考虑,禁用远程登录,具体情况,也需要咨询主机服务商。
而如果是云服务器的话,登录数据库的方式就更多了。本篇先不展开了。
第二步:找到相应的数据表
如果只有一个数据库的话,那就省去了排除数据库这一步了。如果是多个数据库的情况,首先要确定需要重置密码的 DedeCMS
系统使用的是哪一个数据库。
考虑到有可能存在同一个数据库下安装多套 DedeCMS
系统的情况,我们最好是通过 data/common.inc.php
文件来确定一下具体是哪一个数据库、哪一个数据表前缀。
$cfg_dbhost = 'localhost'; // 数据库主机 $cfg_dbname = 'dede109a'; // 数据库名称 $cfg_dbuser = 'dede109a'; // 数据库用户 $cfg_dbpwd = '123456'; // 数据库密码 $cfg_dbprefix = 'dede_'; // 数据表前缀
第三步:重置密码
确定好数据库和数据表前缀后,此处假设数据表前缀为 dede_
,找到 dede_admin
表,如下图所示:
- usetype : 管理账号所属的用户组。默认情况下,“10”代表 超级管理员 ,即拥有全部的管理权限;
- userid : 登录
DedeCMS
系统管理后台的 用户名 ; - pwd : 登录
DedeCMS
系统管理后台的 密码 ;
uname
是用户笔名;userid
才是用户登录ID。
如果只是重置密码,只需要把相应账号的 pwd
字段重置成 f297a57a5a743894a0e4
就可以了。SQL命令如下:
说明:update dede_admin set pwd = 'f297a57a5a743894a0e4' where userid = 'admin';
f297a57a5a743894a0e4
就是加密后的 admin
。
如需同步重设 用户名
、 密码
、 权限
,那就:
update dede_admin set usertype = '10' , userid = 'admin' , pwd = 'f297a57a5a743894a0e4' where id = '1';
确认以上操作成功后,就可以使用 admin
作为密码,登录 DedeCMS
系统管理后台啦。