Discuz 3.5忘记管理员密码了 需要重置管理员密码方法亲测可用
本帖最后由 飞凤互联 于 2025-4-26 01:21 编辑要重置Discuz 3.5管理员密码,请按照以下步骤操作步骤 1:生成新密码的BCrypt哈希
[*]本地生成哈希(推荐)
创建一个PHP文件(如gen_hash.php),内容如下:在命令行或网页中运行该脚本,复制输出的哈希值(以$2y$10$开头)。<?php$password = 'your_new_password';// 替换为你要设置的新密码$hash = password_hash($password, PASSWORD_BCRYPT, ['cost' => 10]);echo "新密码哈希: " . $hash;?>
[*]备用方法(需谨慎)
如果无法运行PHP,可使用支持BCrypt的在线生成工具(确保可信),输入密码并选择BCrypt算法(cost=10)。
步骤 2:登录数据库管理工具
[*]使用phpMyAdmin、MySQL命令行或其他工具登录数据库。
[*]找到Discuz使用的数据库(通常包含表前缀如pre_)。
步骤 3:更新管理员密码字段
[*]定位管理员记录
执行SQL查询,确认管理员用户名或邮箱:SELECT * FROM pre_ucenter_members WHERE username = '管理员用户名';
[*]更新密码哈希
替换管理员用户名和新哈希后执行:UPDATE pre_ucenter_members SET password = '新哈希' WHERE username = '管理员用户名';示例:UPDATE pre_ucenter_members SET password = '$2y$10$xpxPKLM.GhHjGZlYOmxqHuHhLT8LIShDc2WMGqD8d6wNe' WHERE username = 'admin';
步骤 4:清除缓存并登录
[*]登录Discuz后台,删除/data/cache目录下的缓存文件。
[*]使用新密码登录管理员账户。
注意事项
[*]备份数据库:操作前务必备份,防止误操作。
[*]表前缀:确认实际表前缀(如pre_可能不同)。
[*]哈希一致性:确保生成的哈希格式与原字段一致($2y$10$)。
页:
[1]