Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

会员数量上限

[复制链接]
syacinth 发表于 2013-3-27 15:08:24 | 显示全部楼层 |阅读模式
会员id使用mediumint unsigned支持的最大值为16777215,如果预计会员数量会超过这个限制,需通过什么方法解决?
 楼主| syacinth 发表于 2013-3-27 15:15:08 | 显示全部楼层
uid        mediumint(8) unsigned          会员id

DZ里依赖会员id长度的地方多吗?如果直接修改数据表字段,影响的范围有多大?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

www.hyczw.com 发表于 2013-3-27 15:59:30 | 显示全部楼层
要在实践的荒野,没有早一步,也没有晚一步,于千万人中去邂逅自己的爱人,那是太难的缘分,世界上有太多的擦肩而过,更多的时候,我们只是在彼此不断的错过,错过鲜花烂漫的春,又错过了枫叶瑟索的秋,直到漫天白雪,年华不再,在一次次的辛酸感叹之后,才能终于了解——即使真挚,即使两个人都已是心有戚戚,我们的爱,依然需要时间来成全和考验。这世界有着太多的这样的限制与隐秘的禁忌,又有太多难以预测的变故和身不由己的离合,一个转身,也许就已经一辈子错过,要求奥道很多年以后,才会参透所有的争取与努力,也许还抵不果命运开的恶一个玩笑,上帝只在云端一眨眼,所有的结局,就都已经完全改变。”
回复

使用道具 举报

otherbank 发表于 2013-3-27 17:55:34 | 显示全部楼层
一般站点的会员不超过 16777215这个数,所以Discuz!做为开源系统默认用的mediumint unsigned
如果你站点超过这个会员数,需要对数据库所有有关uid的数据表进行修改

安装之前可以对安装数据库的sql文件修改,这个会更方便一点
回复

使用道具 举报

 楼主| syacinth 发表于 2013-3-27 18:00:13 | 显示全部楼层
otherbank 发表于 2013-3-27 17:55
一般站点的会员不超过 16777215这个数,所以Discuz!做为开源系统默认用的mediumint unsigned
如果你站点超 ...

直接修改字段定义没关系吗?如果我把uid改成Int(20),会不会影响到系统功能,比如头像存储,就依赖uid的长度,除此之外,还有其他方面会受到影响吗?谢谢~~
回复

使用道具 举报

otherbank 发表于 2013-3-27 18:12:26 | 显示全部楼层
syacinth 发表于 2013-3-27 18:00
直接修改字段定义没关系吗?如果我把uid改成Int(20),会不会影响到系统功能,比如头像存储,就依赖uid的长 ...

不会影响,
但是UC相对应的表要将uid的长度也增加到20位就可以了
回复

使用道具 举报

 楼主| syacinth 发表于 2013-3-27 18:17:38 | 显示全部楼层
本帖最后由 syacinth 于 2013-3-27 18:21 编辑
otherbank 发表于 2013-3-27 18:12
不会影响,
但是UC相对应的表要将uid的长度也增加到20位就可以了

不知php会不会有int长度超过15位,或者某个长度,就会有末位浮动的问题?

回复

使用道具 举报

otherbank 发表于 2013-3-27 18:28:53 | 显示全部楼层
syacinth 发表于 2013-3-27 18:17
不知php会不会有int长度超过15位,或者某个长度,就会有末位浮动的问题?

uid是自增的,应该没有长度限制
回复

使用道具 举报

 楼主| syacinth 发表于 2013-3-27 18:34:12 | 显示全部楼层
otherbank 发表于 2013-3-27 18:28
uid是自增的,应该没有长度限制

这里有文档:http://www.php.net/manual/en/language.types.integer.php

<?php
$large_number = 2147483647;
var_dump($large_number);                     // int(2147483647)

$large_number = 2147483648;
var_dump($large_number);                     // float(2147483648)

$million = 1000000;
$large_number =  50000 * $million;
var_dump($large_number);                     // float(50000000000)
?>

DZ里面,int是以String的方式传递,还是以int方式?如果是以int方式,那一定会有overflow的问题
回复

使用道具 举报

 楼主| syacinth 发表于 2013-3-27 20:32:15 | 显示全部楼层
otherbank 发表于 2013-3-27 18:28
uid是自增的,应该没有长度限制

除此,如果把其他所有的mediumint改成int,可以吗?会不会引发系统错误?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2025-3-4 08:46 , Processed in 0.028854 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表