很多用户在搬家或者重新安装论坛的时候会丢失 UCenter 的数据,这有可能是数据表前缀不同造成的,也有可能是由于没有备份 UCenter 的数据造成的。
前提:安装 phpmyadmin 。这是管理 MySql 数据库很好的软件,能够方便的进行各项数据库操作。安装教程:http://faq.comsenz.com/viewnews-484

情况一:数据表前缀不同

如果在之前已经备份了 UCenter 的数据,但是在搬家然后恢复数据后用户管理里面只能够看到 admin 一个用户,但是在论坛里面却能够看到有用户。那么,用 phpmyadmin 打开你的 UCenter 的数据库,查看里面表的格式,下划线前面的字符串就是数据表前缀。

然后打开 UCenter 目录下 dataackup 文件夹里面名字以 backup_ 开头的任意一个文件夹,用笔记本打开里面的 sql 文件,然后搜索 CREATE TABLE 查看这段字符串后面的那串字符中数据表前缀是否相同,一般不相同的时候就会造成这种情况。

UCenter 的数据库中有 19 个表,所以如果需要手动修改就要修改 19 个地方,或者重新安装 UCenter,在安装的时候把数据表前缀设置相同。

情况二:没有备份 UC 数据库

因为有一些用户还没有了解 UCenter 的具体作用,那么可能在重新安装或者搬家的时候没有备份 UCenter 的数据库,而造成了用户的丢失。这样的话可以使用下面这个程序,从论坛的数据库中导出用户信息。不过需要注意的一点就是,因为 UCenter 体制下论坛数据库中存放的用户密码不过是一个任意 10 位数进行 md5 加密后的结果罢了,不是真正的用户密码,所以也就导致在恢复用户后,所有用户的密码都不正确了。站长可以用 UCenter 的创始人密码登陆修改管理员的密码,然后登陆论坛后台。
这样站长可以在论坛主页发布一个公告,通知所有用户通过邮箱来重新设置密码,当然之前要配置好邮箱,邮箱配置请看:http://faq.comsenz.com/viewnews-548

程序下载:

mergeruser.zip

程序使用方法:

将本程序上传到论坛的根目录,然后通过 url 执行 mergeruser.php 。

如果论坛使用的 UCenter 有用户,比如安装之后的那个 admin 用户。将会首先清空 UCenter 的会员数据表。然后点击下一步,如果 UCenter 已经没有用户则会直接执行导入。

之后程序会自动导入用户,等待用户导入完毕的时候会提示导入成功,请按照提示操作对论坛和 UCenter 进行进一步的收尾操作。

其实 UCenter 用户数据丢失没有完美的解决办法,只能够通过这种委婉的方式来解决,希望以后站长备份数据的时候一定要备份 UCenter 的数据。