关于MongoDB中64位整型存储解决方案的经历

关于MongoDB中64位整型存储解决方案的经历

image

前三四天里一直都被mongodb的64位整型存储问题纠缠着,由于不是领导,自然开发一般都是普通配置的PC机,然后装的是window7系统,算好了还能装个64位的。就在本地取出存储在MongoDB的整型数据的时候就开始报错了。

MongoCursorException: Can not natively represent the long 1234567890123456 on this platform

之前从未遇到这样的问题,后来在网上寻找资料才大概知道什么原因,相关参考资料并不多,但这篇文章http://my.oschina.net/kisswu/blog/122338里详细讲解了这个上面这个错误的缘由去脉。解决的方案实在是不怎么喜欢,毕竟当我发现这个问题的时候,我的开发进度都快接近尾声了。当然在正式服务器上是不会有这样的问题。但很多开发都是需要在本地调试修复等,要是只能线上测试如果只是一点点还没什么大不了,但恰恰相反很多问题要解决。

接着,以为只是window的php的MongDBdll文件扩展没找到合适的,网上找到官方的扩展文件,试了所有对应PHP版本的扩展依旧没解决问题,因为跟我协同开发的同事他的本地是没有这个问题的,我就也让他把他的dll文件发给我,解决试了大半天依旧不行。

最后算是知道了为什么大牛都不喜欢window系统了,很多优秀的服务或功能都没在window有,只能怪window不开源。那这样是不是真的只能本地改好传到线上才能调试了?,最后发现用本地MongDB数据库就不会出现上面提到的错误,好在MongDB有window版本的。怎么之前就没想到呢?幸好有同事提醒,当然这样也是有缺陷的,就是本地和线上的数据是不同步的。但这样总比要我重新去修改所有代码好。

转载于:https://my.oschina.net/ZYaller/blog/1477155

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值