1.使用maintenance/changePassword.php维护脚本来重置一名用户的密码
在命令行下运行该脚本。换句话说,请登录到安装wiki的服务器,然后进入命令行提示符。进入安装目录,然后进入maintenance子目录。运行下列命令:
php changePassword.php --user=someuser --password=somepass
“somepass”就是将要设置的密码
“someuser”就是将修改其密码的用户名
2.用户名应出现在数据库的“user”表中,可以使用直接修改数据库的老办法重置密码
2.1MySQL数据库重置密码
假设变量$wgPasswordSalt已被设为true值(默认),可以在MySQL中运行下列SQL查询:
UPDATE USER SET user_password = MD5(CONCAT(user_id, '-', MD5('somepass'))) WHERE user_name = 'someuser';
2.2PostGreSQL重置密码
UPDATE mwuser SET user_password = md5(user_id || '-' || md5('somepass')) WHERE user_name='someuser';
- “somepass”就是将要设置的密码
- “someuser”就是您将修改其密码的用户名,该用户名应出现在数据库的“user”表中
注意:CONCAT字符串中的user_id是一项列名,不应被替换为'someuser'。
注意:如果得到了'dbname.user table does not exist'错误,请检查LocalSettings.php文件,并特别注意$wgDBprefix变量的值。如果该变量不为空,请尝试重复执行上述命令,并将SQL查询UPDATE子句中的user替换为$wgDBPrefix_user。