关于执行dz3.5升级程序,出现1062处理无效
我又来了,求助。执行dz3.5程序,中途出现1062情况,根据常见问题处理方法后(我从下面步骤1到4执行的),执行后出现pre_common_member_archive,用户名还原(我手动修改过的用户名,又还原),请问这是怎么回事?(我的表前缀不是默认的pre_)
执行dz3.5升级程序出现问题
url地址:install/update_adult.php?step=utf8mb4&table=pre_common_member_archive
我使用的解决方法
Q009:升级过程中提示(1062) Duplicate entry '***' for key 'username'ALTER TABLE common_member CONVERT TO CHARACTER SET utf8mb4COLLATE utf8mb4_unicode_ci;(common_member也可能是common_member_archive)
A009:首先,这一般是UC升级1.7.0后UC里应用通信失败导致改名通知未被全部执行就进行了X程序升级引起的,解决方法有多种。
用方法处理修改pre_common_member_archive 报错的用户名,执行sql命令后已经改过的用户名又恢复之前的报错的用户名。
我知道答案 回答被采纳将会获得5 金币 已有1人回答
执行dz3.5升级程序出现问题
url地址:install/update_adult.php?step=utf8mb4&table=pre_common_member_archive
我使用的解决方法
Q009:升级过程中提示(1062) Duplicate entry '***' for key 'username'ALTER TABLE common_member CONVERT TO CHARACTER SET utf8mb4COLLATE utf8mb4_unicode_ci;(common_member也可能是common_member_archive)
A009:首先,这一般是UC升级1.7.0后UC里应用通信失败导致改名通知未被全部执行就进行了X程序升级引起的,解决方法有多种。
- 其一,完全恢复所有数据后,重新升级UC之后,进入UC后台,确保通信成功,且“数据列表-通知列表”中重命名用户通知全部成功,此时再执行X程序升级则无虞;其二,进入数据库,执行语句:
- select uid from pre_ucenter_members where username in (select username from pre_ucenter_members group by convert(username using utf8mb4) collate utf8mb4_unicode_ci having count(1) > 1)
- update `pre_common_member_archive` inner join `pre_ucenter_members` on `pre_common_member_archive`.uid = `pre_ucenter_members`.uid set `pre_common_member_archive`.username = `pre_ucenter_members`.username
再将异常用户改名,如果UC表查询无异常,上述语句中表名可以更换为(pre_common_member_archive)其三,进入数据库,执行语句
- update `pre_common_member` inner join `pre_ucenter_members` on `pre_common_member`.uid = `pre_ucenter_members`.uid set `pre_common_member`.username = `pre_ucenter_members`.username
用方法处理修改pre_common_member_archive 报错的用户名,执行sql命令后已经改过的用户名又恢复之前的报错的用户名。
我知道答案 回答被采纳将会获得5 金币 已有1人回答